LICENSE
MANIFEST.in
README.md
THIRD_PARTY_NOTICES.md
_web_check.py
kotoba_build.py
pyproject.toml
src/kotoba/__init__.py
src/kotoba/paths.py
src/kotoba/server.py
src/kotoba/cli/__init__.py
src/kotoba/cli/__main__.py
src/kotoba/cli/app.py
src/kotoba/cli/approvals.py
src/kotoba/cli/doctor.py
src/kotoba/cli/events_bridge.py
src/kotoba/cli/facts.py
src/kotoba/cli/host.py
src/kotoba/cli/interrupt.py
src/kotoba/cli/secret.py
src/kotoba/cli/serve.py
src/kotoba/cli/session.py
src/kotoba/cli/settings_view.py
src/kotoba/cli/slash.py
src/kotoba/cli/state.py
src/kotoba/cli/wizard.py
src/kotoba/cli/input/__init__.py
src/kotoba/cli/input/commands.py
src/kotoba/cli/input/keys.py
src/kotoba/cli/input/menu.py
src/kotoba/cli/input/prompt.py
src/kotoba/cli/render/__init__.py
src/kotoba/cli/render/art.py
src/kotoba/cli/render/ascii_fold.py
src/kotoba/cli/render/caps.py
src/kotoba/cli/render/cards.py
src/kotoba/cli/render/first_run.py
src/kotoba/cli/render/footer.py
src/kotoba/cli/render/header.py
src/kotoba/cli/render/kaomoji.py
src/kotoba/cli/render/listing.py
src/kotoba/cli/render/markdown.py
src/kotoba/cli/render/paths.py
src/kotoba/cli/render/portrait.py
src/kotoba/cli/render/region.py
src/kotoba/cli/render/rows.py
src/kotoba/cli/render/safe.py
src/kotoba/cli/render/screen.py
src/kotoba/cli/render/text.py
src/kotoba/cli/render/theme.py
src/kotoba/core/__init__.py
src/kotoba/core/app_settings.py
src/kotoba/core/approval.py
src/kotoba/core/atomic_file.py
src/kotoba/core/attachments.py
src/kotoba/core/citations.py
src/kotoba/core/command_line.py
src/kotoba/core/context.py
src/kotoba/core/cron.py
src/kotoba/core/deferred_exec.py
src/kotoba/core/emotions.py
src/kotoba/core/engine.py
src/kotoba/core/ephemeral_secrets.py
src/kotoba/core/events.py
src/kotoba/core/file_library.py
src/kotoba/core/file_store.py
src/kotoba/core/first_run.py
src/kotoba/core/frontend.py
src/kotoba/core/gate.py
src/kotoba/core/http_security.py
src/kotoba/core/interaction.py
src/kotoba/core/keystore.py
src/kotoba/core/llm.py
src/kotoba/core/logs.py
src/kotoba/core/loop.py
src/kotoba/core/mcp_active.py
src/kotoba/core/memory.py
src/kotoba/core/model_install.py
src/kotoba/core/model_library.py
src/kotoba/core/path_security.py
src/kotoba/core/pdf.py
src/kotoba/core/pending_reminder.py
src/kotoba/core/perms.py
src/kotoba/core/plugins.py
src/kotoba/core/providers.py
src/kotoba/core/quoted.py
src/kotoba/core/ratelimit.py
src/kotoba/core/reports.py
src/kotoba/core/session_captures.py
src/kotoba/core/session_sandbox.py
src/kotoba/core/session_state.py
src/kotoba/core/settings.py
src/kotoba/core/skill_docs.py
src/kotoba/core/ssrf.py
src/kotoba/core/stream.py
src/kotoba/core/task_list.py
src/kotoba/core/text_security.py
src/kotoba/core/tool_guidance.py
src/kotoba/core/transport.py
src/kotoba/core/turns.py
src/kotoba/core/user_memory.py
src/kotoba/core/visual_memory.py
src/kotoba/core/voice_key.py
src/kotoba/core/voice_patterns.py
src/kotoba/core/work_runner.py
src/kotoba/core/work_state.py
src/kotoba/core/workspace.py
src/kotoba/core/mcp/__init__.py
src/kotoba/core/mcp/auth_flow.py
src/kotoba/core/mcp/browser_launch.py
src/kotoba/core/mcp/client.py
src/kotoba/core/mcp/config.py
src/kotoba/core/mcp/inject_scan.py
src/kotoba/core/mcp/known.py
src/kotoba/core/mcp/oauth.py
src/kotoba/core/mcp/pending.py
src/kotoba/core/mcp/registry_search.py
src/kotoba/core/sandbox/__init__.py
src/kotoba/core/sandbox/base.py
src/kotoba/core/sandbox/docker.py
src/kotoba/core/sandbox/local.py
src/kotoba/core/voice/__init__.py
src/kotoba/core/voice/config.py
src/kotoba/core/voice/sentences.py
src/kotoba/core/voice/session.py
src/kotoba/core/voice/stt.py
src/kotoba/core/voice/tts.py
src/kotoba/core/voice/tts_rest.py
src/kotoba/data/cli/faces/affectionate-outlined.png
src/kotoba/data/cli/faces/affectionate.png
src/kotoba/data/cli/faces/angry-outlined.png
src/kotoba/data/cli/faces/angry.png
src/kotoba/data/cli/faces/confused-outlined.png
src/kotoba/data/cli/faces/confused.png
src/kotoba/data/cli/faces/crying-outlined.png
src/kotoba/data/cli/faces/crying.png
src/kotoba/data/cli/faces/determined-outlined.png
src/kotoba/data/cli/faces/determined.png
src/kotoba/data/cli/faces/embarrassed-outlined.png
src/kotoba/data/cli/faces/embarrassed.png
src/kotoba/data/cli/faces/excited-outlined.png
src/kotoba/data/cli/faces/excited.png
src/kotoba/data/cli/faces/happy-outlined.png
src/kotoba/data/cli/faces/happy.png
src/kotoba/data/cli/faces/neutral-outlined.png
src/kotoba/data/cli/faces/neutral.png
src/kotoba/data/cli/faces/sad-outlined.png
src/kotoba/data/cli/faces/sad.png
src/kotoba/data/cli/faces/scared-outlined.png
src/kotoba/data/cli/faces/scared.png
src/kotoba/data/cli/faces/sleepy-outlined.png
src/kotoba/data/cli/faces/sleepy.png
src/kotoba/data/cli/faces/surprised-outlined.png
src/kotoba/data/cli/faces/surprised.png
src/kotoba/data/cli/faces/thinking-outlined.png
src/kotoba/data/cli/faces/thinking.png
src/kotoba/data/soul/default.md
src/kotoba/data/soul/report-chibi.webp
src/kotoba/data/soul/report_template.html
src/kotoba/data/soul/skills/discord-server.md
src/kotoba/data/soul/skills/operating-websites.md
src/kotoba/data/soul/skills/research.md
src/kotoba/data/soul/templates/assistant.md
src/kotoba/data/soul/templates/companion.md
src/kotoba/data/soul/templates/study.md
src/kotoba/db/__init__.py
src/kotoba/db/database.py
src/kotoba/db/migrations.py
src/kotoba/db/queries.py
src/kotoba/discord/__init__.py
src/kotoba/discord/actions.py
src/kotoba/discord/audio.py
src/kotoba/discord/authority.py
src/kotoba/discord/bridge.py
src/kotoba/discord/cards.py
src/kotoba/discord/client.py
src/kotoba/discord/config.py
src/kotoba/discord/guild.py
src/kotoba/discord/history.py
src/kotoba/discord/media.py
src/kotoba/discord/people.py
src/kotoba/discord/plan.py
src/kotoba/discord/run.py
src/kotoba/discord/speak.py
src/kotoba/discord/state.py
src/kotoba/discord/text.py
src/kotoba/discord/voice.py
src/kotoba/discord/voice_recv.py
src/kotoba/models/__init__.py
src/kotoba/models/schemas.py
src/kotoba/soul/__init__.py
src/kotoba/soul/loader.py
src/kotoba/soul/prompt.py
src/kotoba/tools/__init__.py
src/kotoba/tools/registry.py
src/kotoba/tools/action/__init__.py
src/kotoba/tools/action/ask_secret.py
src/kotoba/tools/action/cronjob.py
src/kotoba/tools/action/delegate.py
src/kotoba/tools/action/discord_act.py
src/kotoba/tools/action/discord_apply_plan.py
src/kotoba/tools/action/discord_guild_read.py
src/kotoba/tools/action/discord_people.py
src/kotoba/tools/action/discord_plan.py
src/kotoba/tools/action/discord_read_history.py
src/kotoba/tools/action/discord_remember_person.py
src/kotoba/tools/action/discord_send_file.py
src/kotoba/tools/action/discord_voice.py
src/kotoba/tools/action/execute_code.py
src/kotoba/tools/action/file_read.py
src/kotoba/tools/action/file_write.py
src/kotoba/tools/action/get_credential.py
src/kotoba/tools/action/make_report.py
src/kotoba/tools/action/mcp_find.py
src/kotoba/tools/action/mcp_install.py
src/kotoba/tools/action/patch.py
src/kotoba/tools/action/request_credential.py
src/kotoba/tools/action/search_files.py
src/kotoba/tools/action/shell.py
src/kotoba/tools/builtin/__init__.py
src/kotoba/tools/builtin/activate_tools.py
src/kotoba/tools/builtin/ask_user.py
src/kotoba/tools/builtin/cancel_work.py
src/kotoba/tools/builtin/clarify.py
src/kotoba/tools/builtin/memory_recall.py
src/kotoba/tools/builtin/memory_write.py
src/kotoba/tools/builtin/open_link.py
src/kotoba/tools/builtin/recall_image.py
src/kotoba/tools/builtin/remember_image.py
src/kotoba/tools/builtin/session_search.py
src/kotoba/tools/builtin/skill_list.py
src/kotoba/tools/builtin/skill_view.py
src/kotoba/tools/builtin/start_work.py
src/kotoba/tools/builtin/todo.py
src/kotoba/tools/builtin/view_capture.py
src/kotoba/tools/builtin/web_extract.py
src/kotoba/tools/builtin/web_search.py
src/kotoba/web/404.html
src/kotoba/web/__next.__PAGE__.txt
src/kotoba/web/__next._full.txt
src/kotoba/web/__next._tree.txt
src/kotoba/web/_not-found.html
src/kotoba/web/_not-found.txt
src/kotoba/web/app.html
src/kotoba/web/app.txt
src/kotoba/web/icon.svg
src/kotoba/web/index.html
src/kotoba/web/index.txt
src/kotoba/web/kotoba-build.json
src/kotoba/web/live2dcubismcore.min.js
src/kotoba/web/login.html
src/kotoba/web/login.txt
src/kotoba/web/setup.html
src/kotoba/web/setup.txt
src/kotoba/web/_next/static/TK2dppdZX-kTIKeF-D-C6/_buildManifest.js
src/kotoba/web/_next/static/TK2dppdZX-kTIKeF-D-C6/_clientMiddlewareManifest.js
src/kotoba/web/_next/static/TK2dppdZX-kTIKeF-D-C6/_ssgManifest.js
src/kotoba/web/_next/static/chunks/0_2ml72ye7g6o.js
src/kotoba/web/_next/static/chunks/0cz1d0mv5g_q7.js
src/kotoba/web/_next/static/chunks/0ehjiuuxbbhq9.js
src/kotoba/web/_next/static/chunks/0ic_11hw8h4cu.js
src/kotoba/web/_next/static/chunks/0j1pkwtlqhona.css
src/kotoba/web/_next/static/chunks/0mtcc06xti5dx.js
src/kotoba/web/_next/static/chunks/1-t5_o3itsj04.js
src/kotoba/web/_next/static/chunks/1co10x_3adour.js
src/kotoba/web/_next/static/chunks/1phqigu6-n6oq.js
src/kotoba/web/_next/static/chunks/1qijtm0wop35v.js
src/kotoba/web/_next/static/chunks/28_0u4csvgijm.js
src/kotoba/web/_next/static/chunks/2umajq92qvbvw.js
src/kotoba/web/_next/static/chunks/37e6h-iq48t65.js
src/kotoba/web/_next/static/chunks/3b0jkyfcycbbw.js
src/kotoba/web/_next/static/chunks/3qts2cmrnww5k.js
src/kotoba/web/_next/static/chunks/turbopack-0kby9a_0jp9qw.js
src/kotoba/web/_next/static/media/icon.1f96mdihm-6vi.svg
src/kotoba/web/_not-found/__next._full.txt
src/kotoba/web/_not-found/__next._not-found.__PAGE__.txt
src/kotoba/web/_not-found/__next._tree.txt
src/kotoba/web/app/__next._full.txt
src/kotoba/web/app/__next._tree.txt
src/kotoba/web/app/__next.app.__PAGE__.txt
src/kotoba/web/art/kotoba-chibi.webp
src/kotoba/web/login/__next._full.txt
src/kotoba/web/login/__next._tree.txt
src/kotoba/web/login/__next.login.__PAGE__.txt
src/kotoba/web/scene/room.png
src/kotoba/web/setup/__next._full.txt
src/kotoba/web/setup/__next._tree.txt
src/kotoba/web/setup/__next.setup.__PAGE__.txt
src/kotoba/web/subagents/chibi-closed.webp
src/kotoba/web/subagents/chibi-open.webp
src/kotoba/web/worklets/mic-capture.js
src/kotoba_companion.egg-info/PKG-INFO
src/kotoba_companion.egg-info/SOURCES.txt
src/kotoba_companion.egg-info/dependency_links.txt
src/kotoba_companion.egg-info/entry_points.txt
src/kotoba_companion.egg-info/requires.txt
src/kotoba_companion.egg-info/top_level.txt