LICENSE
README.md
pyproject.toml
src/always_attend/__init__.py
src/always_attend/__main__.py
src/always_attend/agent_cli.py
src/always_attend/agent_protocol.py
src/always_attend/ai_handoff.py
src/always_attend/attendance_state_reader.py
src/always_attend/cli.py
src/always_attend/code_parser.py
src/always_attend/matcher.py
src/always_attend/okta_client.py
src/always_attend/paths.py
src/always_attend/reporter.py
src/always_attend/runtime_contract.py
src/always_attend/session_manager.py
src/always_attend/skill_installer.py
src/always_attend/source_clients.py
src/always_attend/submission_plan.py
src/always_attend/submitter.py
src/always_attend.egg-info/PKG-INFO
src/always_attend.egg-info/SOURCES.txt
src/always_attend.egg-info/dependency_links.txt
src/always_attend.egg-info/entry_points.txt
src/always_attend.egg-info/requires.txt
src/always_attend.egg-info/top_level.txt
src/always_attend/skills/BOOTSTRAP.md
src/always_attend/skills/SKILL.md
src/always_attend/source_collectors/__init__.py
src/always_attend/source_collectors/base.py
src/always_attend/source_collectors/edstem.py
src/always_attend/source_collectors/gmail.py
src/always_attend/source_collectors/gog.py
src/always_attend/source_collectors/moodle.py
src/core/__init__.py
src/core/browser_controller.py
src/core/login.py
src/core/submit.py
src/utils/__init__.py
src/utils/browser_detection.py
src/utils/browser_session.py
src/utils/env_utils.py
src/utils/logger.py
src/utils/playwright_helpers.py
src/utils/playwright_install.py
src/utils/session.py
src/utils/simple_progress.py
src/utils/testing.py
src/utils/totp.py
tests/test_agent_cli.py
tests/test_ai_handoff.py
tests/test_browser_controller.py
tests/test_browser_session.py
tests/test_cli.py
tests/test_gmail_collector.py
tests/test_mock_portal_integration.py
tests/test_parser_matcher.py
tests/test_paths.py
tests/test_reporter.py
tests/test_session_manager.py
tests/test_source_clients.py
tests/test_state_reader.py