yee88 0.1.0__tar.gz → 0.3.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (264) hide show
  1. {yee88-0.1.0 → yee88-0.3.0}/.codex/skills/takopi-release/SKILL.md +4 -4
  2. {yee88-0.1.0 → yee88-0.3.0}/Justfile +1 -1
  3. {yee88-0.1.0 → yee88-0.3.0}/PKG-INFO +6 -6
  4. {yee88-0.1.0 → yee88-0.3.0}/README.md +1 -1
  5. {yee88-0.1.0 → yee88-0.3.0}/changelog.md +110 -104
  6. {yee88-0.1.0 → yee88-0.3.0}/docs/explanation/architecture.md +8 -8
  7. {yee88-0.1.0 → yee88-0.3.0}/docs/explanation/module-map.md +3 -3
  8. {yee88-0.1.0 → yee88-0.3.0}/docs/explanation/plugin-system.md +10 -10
  9. {yee88-0.1.0 → yee88-0.3.0}/docs/how-to/add-a-runner.md +17 -17
  10. {yee88-0.1.0 → yee88-0.3.0}/docs/how-to/chat-sessions.md +4 -4
  11. {yee88-0.1.0 → yee88-0.3.0}/docs/how-to/dev-setup.md +4 -4
  12. {yee88-0.1.0 → yee88-0.3.0}/docs/how-to/file-transfer.md +7 -7
  13. {yee88-0.1.0 → yee88-0.3.0}/docs/how-to/projects.md +12 -12
  14. {yee88-0.1.0 → yee88-0.3.0}/docs/how-to/route-by-chat.md +5 -5
  15. {yee88-0.1.0 → yee88-0.3.0}/docs/how-to/topics.md +3 -3
  16. {yee88-0.1.0 → yee88-0.3.0}/docs/how-to/troubleshooting.md +2 -2
  17. {yee88-0.1.0 → yee88-0.3.0}/docs/how-to/voice-notes.md +5 -5
  18. {yee88-0.1.0 → yee88-0.3.0}/docs/how-to/worktrees.md +4 -4
  19. {yee88-0.1.0 → yee88-0.3.0}/docs/how-to/write-a-plugin.md +17 -17
  20. {yee88-0.1.0 → yee88-0.3.0}/docs/index.md +4 -4
  21. {yee88-0.1.0 → yee88-0.3.0}/docs/javascripts/hero-chat.js +3 -3
  22. {yee88-0.1.0 → yee88-0.3.0}/docs/plugins.md +2 -2
  23. yee88-0.3.0/docs/reference/agents/repo-map.md +40 -0
  24. {yee88-0.1.0 → yee88-0.3.0}/docs/reference/commands-and-directives.md +8 -8
  25. {yee88-0.1.0 → yee88-0.3.0}/docs/reference/config.md +29 -29
  26. {yee88-0.1.0 → yee88-0.3.0}/docs/reference/context-resolution.md +16 -16
  27. {yee88-0.1.0 → yee88-0.3.0}/docs/reference/index.md +6 -6
  28. {yee88-0.1.0 → yee88-0.3.0}/docs/reference/plugin-api.md +7 -7
  29. yee88-0.3.0/docs/reference/plugins.md +16 -0
  30. {yee88-0.1.0 → yee88-0.3.0}/docs/reference/runners/claude/runner.md +16 -16
  31. {yee88-0.1.0 → yee88-0.3.0}/docs/reference/runners/claude/takopi-events.md +9 -9
  32. {yee88-0.1.0 → yee88-0.3.0}/docs/reference/runners/codex/takopi-events.md +1 -1
  33. {yee88-0.1.0 → yee88-0.3.0}/docs/reference/runners/index.md +4 -4
  34. {yee88-0.1.0 → yee88-0.3.0}/docs/reference/runners/opencode/runner.md +4 -4
  35. {yee88-0.1.0 → yee88-0.3.0}/docs/reference/runners/opencode/takopi-events.md +1 -1
  36. {yee88-0.1.0 → yee88-0.3.0}/docs/reference/runners/pi/runner.md +11 -11
  37. {yee88-0.1.0 → yee88-0.3.0}/docs/reference/runners/pi/takopi-events.md +5 -5
  38. {yee88-0.1.0 → yee88-0.3.0}/docs/reference/specification.md +1 -1
  39. {yee88-0.1.0 → yee88-0.3.0}/docs/reference/transports/telegram.md +20 -20
  40. {yee88-0.1.0 → yee88-0.3.0}/docs/stylesheets/admonitions.css +14 -14
  41. {yee88-0.1.0 → yee88-0.3.0}/docs/tutorials/conversation-modes.md +9 -9
  42. {yee88-0.1.0 → yee88-0.3.0}/docs/tutorials/first-run.md +10 -10
  43. {yee88-0.1.0 → yee88-0.3.0}/docs/tutorials/install.md +51 -51
  44. {yee88-0.1.0 → yee88-0.3.0}/docs/tutorials/multi-engine.md +12 -12
  45. {yee88-0.1.0 → yee88-0.3.0}/docs/tutorials/projects-and-branches.md +19 -19
  46. {yee88-0.1.0 → yee88-0.3.0}/pyproject.toml +17 -17
  47. {yee88-0.1.0 → yee88-0.3.0}/readme.md +1 -1
  48. {yee88-0.1.0 → yee88-0.3.0}/scripts/onboarding_preview.py +4 -4
  49. yee88-0.3.0/src/yee88/__init__.py +1 -0
  50. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/cli/__init__.py +2 -2
  51. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/cli/config.py +3 -3
  52. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/cli/doctor.py +3 -3
  53. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/cli/onboarding_cmd.py +2 -2
  54. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/cli/plugins.py +1 -1
  55. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/cli/run.py +1 -1
  56. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/cli/topic.py +5 -5
  57. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/logging.py +1 -1
  58. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/plugins.py +3 -3
  59. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/runners/run_options.py +1 -1
  60. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/api_schemas.py +1 -1
  61. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/backend.py +1 -1
  62. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/bridge.py +1 -1
  63. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/files.py +1 -1
  64. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/onboarding.py +5 -5
  65. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/utils/paths.py +1 -1
  66. {yee88-0.1.0 → yee88-0.3.0}/tests/conftest.py +2 -2
  67. {yee88-0.1.0 → yee88-0.3.0}/tests/factories.py +1 -1
  68. {yee88-0.1.0 → yee88-0.3.0}/tests/plugin_fixtures.py +2 -2
  69. {yee88-0.1.0 → yee88-0.3.0}/tests/telegram_fakes.py +10 -10
  70. {yee88-0.1.0 → yee88-0.3.0}/tests/test_api_exports.py +1 -1
  71. {yee88-0.1.0 → yee88-0.3.0}/tests/test_auto_router.py +4 -4
  72. {yee88-0.1.0 → yee88-0.3.0}/tests/test_claude_runner.py +5 -5
  73. {yee88-0.1.0 → yee88-0.3.0}/tests/test_claude_schema.py +1 -1
  74. {yee88-0.1.0 → yee88-0.3.0}/tests/test_cli_auto_router.py +7 -7
  75. {yee88-0.1.0 → yee88-0.3.0}/tests/test_cli_chat_id.py +7 -7
  76. {yee88-0.1.0 → yee88-0.3.0}/tests/test_cli_commands.py +25 -25
  77. {yee88-0.1.0 → yee88-0.3.0}/tests/test_cli_config.py +7 -7
  78. {yee88-0.1.0 → yee88-0.3.0}/tests/test_cli_doctor.py +6 -6
  79. {yee88-0.1.0 → yee88-0.3.0}/tests/test_cli_helpers.py +6 -6
  80. {yee88-0.1.0 → yee88-0.3.0}/tests/test_codex_runner_helpers.py +6 -6
  81. {yee88-0.1.0 → yee88-0.3.0}/tests/test_codex_schema.py +1 -1
  82. {yee88-0.1.0 → yee88-0.3.0}/tests/test_codex_tool_result_summary.py +4 -4
  83. {yee88-0.1.0 → yee88-0.3.0}/tests/test_command_registry.py +3 -3
  84. {yee88-0.1.0 → yee88-0.3.0}/tests/test_config_store.py +3 -3
  85. {yee88-0.1.0 → yee88-0.3.0}/tests/test_config_watch.py +10 -10
  86. {yee88-0.1.0 → yee88-0.3.0}/tests/test_engine_discovery.py +5 -5
  87. {yee88-0.1.0 → yee88-0.3.0}/tests/test_exec_bridge.py +14 -14
  88. {yee88-0.1.0 → yee88-0.3.0}/tests/test_exec_render.py +5 -5
  89. {yee88-0.1.0 → yee88-0.3.0}/tests/test_exec_runner.py +2 -2
  90. {yee88-0.1.0 → yee88-0.3.0}/tests/test_git_utils.py +15 -15
  91. {yee88-0.1.0 → yee88-0.3.0}/tests/test_lockfile.py +5 -5
  92. {yee88-0.1.0 → yee88-0.3.0}/tests/test_onboarding.py +6 -6
  93. {yee88-0.1.0 → yee88-0.3.0}/tests/test_onboarding_helpers.py +7 -7
  94. {yee88-0.1.0 → yee88-0.3.0}/tests/test_onboarding_interactive.py +10 -10
  95. {yee88-0.1.0 → yee88-0.3.0}/tests/test_opencode_runner.py +6 -6
  96. {yee88-0.1.0 → yee88-0.3.0}/tests/test_opencode_schema.py +1 -1
  97. {yee88-0.1.0 → yee88-0.3.0}/tests/test_paths.py +1 -1
  98. {yee88-0.1.0 → yee88-0.3.0}/tests/test_pi_runner.py +5 -5
  99. {yee88-0.1.0 → yee88-0.3.0}/tests/test_pi_schema.py +1 -1
  100. {yee88-0.1.0 → yee88-0.3.0}/tests/test_plugins.py +17 -17
  101. {yee88-0.1.0 → yee88-0.3.0}/tests/test_projects_config.py +14 -14
  102. {yee88-0.1.0 → yee88-0.3.0}/tests/test_rendering.py +1 -1
  103. {yee88-0.1.0 → yee88-0.3.0}/tests/test_runner_contract.py +2 -2
  104. {yee88-0.1.0 → yee88-0.3.0}/tests/test_runner_run_options.py +6 -6
  105. {yee88-0.1.0 → yee88-0.3.0}/tests/test_runner_utils.py +3 -3
  106. {yee88-0.1.0 → yee88-0.3.0}/tests/test_runtime_loader.py +5 -5
  107. {yee88-0.1.0 → yee88-0.3.0}/tests/test_settings.py +14 -14
  108. {yee88-0.1.0 → yee88-0.3.0}/tests/test_settings_contract.py +3 -3
  109. {yee88-0.1.0 → yee88-0.3.0}/tests/test_subprocess.py +1 -1
  110. {yee88-0.1.0 → yee88-0.3.0}/tests/test_telegram_agent_trigger_commands.py +7 -7
  111. {yee88-0.1.0 → yee88-0.3.0}/tests/test_telegram_backend.py +8 -8
  112. {yee88-0.1.0 → yee88-0.3.0}/tests/test_telegram_bridge.py +83 -83
  113. {yee88-0.1.0 → yee88-0.3.0}/tests/test_telegram_chat_prefs.py +1 -1
  114. {yee88-0.1.0 → yee88-0.3.0}/tests/test_telegram_chat_sessions.py +2 -2
  115. {yee88-0.1.0 → yee88-0.3.0}/tests/test_telegram_client.py +3 -3
  116. {yee88-0.1.0 → yee88-0.3.0}/tests/test_telegram_client_api.py +2 -2
  117. {yee88-0.1.0 → yee88-0.3.0}/tests/test_telegram_context_helpers.py +7 -7
  118. {yee88-0.1.0 → yee88-0.3.0}/tests/test_telegram_engine_defaults.py +8 -8
  119. {yee88-0.1.0 → yee88-0.3.0}/tests/test_telegram_engine_overrides.py +3 -3
  120. {yee88-0.1.0 → yee88-0.3.0}/tests/test_telegram_file_transfer_helpers.py +9 -9
  121. {yee88-0.1.0 → yee88-0.3.0}/tests/test_telegram_files.py +2 -2
  122. {yee88-0.1.0 → yee88-0.3.0}/tests/test_telegram_incoming.py +4 -4
  123. {yee88-0.1.0 → yee88-0.3.0}/tests/test_telegram_media_command.py +6 -6
  124. {yee88-0.1.0 → yee88-0.3.0}/tests/test_telegram_polling.py +2 -2
  125. {yee88-0.1.0 → yee88-0.3.0}/tests/test_telegram_queue.py +4 -4
  126. {yee88-0.1.0 → yee88-0.3.0}/tests/test_telegram_topic_state.py +3 -3
  127. {yee88-0.1.0 → yee88-0.3.0}/tests/test_telegram_topics_command.py +10 -10
  128. {yee88-0.1.0 → yee88-0.3.0}/tests/test_telegram_topics_helpers.py +2 -2
  129. {yee88-0.1.0 → yee88-0.3.0}/tests/test_telegram_trigger_mode.py +7 -7
  130. {yee88-0.1.0 → yee88-0.3.0}/tests/test_telegram_voice.py +4 -4
  131. {yee88-0.1.0 → yee88-0.3.0}/tests/test_tool_actions.py +3 -3
  132. {yee88-0.1.0 → yee88-0.3.0}/tests/test_transport.py +1 -1
  133. {yee88-0.1.0 → yee88-0.3.0}/tests/test_transport_registry.py +3 -3
  134. {yee88-0.1.0 → yee88-0.3.0}/tests/test_transport_runtime.py +5 -5
  135. {yee88-0.1.0 → yee88-0.3.0}/tests/test_worktrees.py +9 -9
  136. {yee88-0.1.0 → yee88-0.3.0}/uv.lock +1 -1
  137. {yee88-0.1.0 → yee88-0.3.0}/zensical.toml +10 -10
  138. yee88-0.1.0/docs/reference/agents/repo-map.md +0 -40
  139. yee88-0.1.0/docs/reference/plugins.md +0 -16
  140. yee88-0.1.0/src/takopi/__init__.py +0 -1
  141. {yee88-0.1.0 → yee88-0.3.0}/.codex/AGENTS.md +0 -0
  142. {yee88-0.1.0 → yee88-0.3.0}/.github/workflows/ci.yml +0 -0
  143. {yee88-0.1.0 → yee88-0.3.0}/.github/workflows/release.yml +0 -0
  144. {yee88-0.1.0 → yee88-0.3.0}/.gitignore +0 -0
  145. {yee88-0.1.0 → yee88-0.3.0}/LICENSE +0 -0
  146. {yee88-0.1.0 → yee88-0.3.0}/docs/assets/favicon.svg +0 -0
  147. {yee88-0.1.0 → yee88-0.3.0}/docs/assets/logo.svg +0 -0
  148. {yee88-0.1.0 → yee88-0.3.0}/docs/assets/og-image.jpg +0 -0
  149. {yee88-0.1.0 → yee88-0.3.0}/docs/assets/takopi.svg +0 -0
  150. {yee88-0.1.0 → yee88-0.3.0}/docs/developing.md +0 -0
  151. {yee88-0.1.0 → yee88-0.3.0}/docs/explanation/index.md +0 -0
  152. {yee88-0.1.0 → yee88-0.3.0}/docs/explanation/routing-and-sessions.md +0 -0
  153. {yee88-0.1.0 → yee88-0.3.0}/docs/how-to/index.md +0 -0
  154. {yee88-0.1.0 → yee88-0.3.0}/docs/how-to/schedule-tasks.md +0 -0
  155. {yee88-0.1.0 → yee88-0.3.0}/docs/how-to/switch-engines.md +0 -0
  156. {yee88-0.1.0 → yee88-0.3.0}/docs/overrides/.icons/takopi/takopi.svg +0 -0
  157. {yee88-0.1.0 → yee88-0.3.0}/docs/overrides/main.html +0 -0
  158. {yee88-0.1.0 → yee88-0.3.0}/docs/reference/agents/index.md +0 -0
  159. {yee88-0.1.0 → yee88-0.3.0}/docs/reference/agents/invariants.md +0 -0
  160. {yee88-0.1.0 → yee88-0.3.0}/docs/reference/env-vars.md +0 -0
  161. {yee88-0.1.0 → yee88-0.3.0}/docs/reference/runners/claude/stream-json-cheatsheet.md +0 -0
  162. {yee88-0.1.0 → yee88-0.3.0}/docs/reference/runners/codex/exec-json-cheatsheet.md +0 -0
  163. {yee88-0.1.0 → yee88-0.3.0}/docs/reference/runners/opencode/stream-json-cheatsheet.md +0 -0
  164. {yee88-0.1.0 → yee88-0.3.0}/docs/reference/runners/pi/stream-json-cheatsheet.md +0 -0
  165. {yee88-0.1.0 → yee88-0.3.0}/docs/stylesheets/hero-chat.css +0 -0
  166. {yee88-0.1.0 → yee88-0.3.0}/docs/stylesheets/workflow-preview.css +0 -0
  167. {yee88-0.1.0 → yee88-0.3.0}/docs/tutorials/index.md +0 -0
  168. {yee88-0.1.0 → yee88-0.3.0}/docs/user-guide.md +0 -0
  169. {yee88-0.1.0 → yee88-0.3.0}/scripts/commit_notify.py +0 -0
  170. {yee88-0.1.0 → yee88-0.3.0}/scripts/docs_build_cf.sh +0 -0
  171. {yee88-0.1.0 → yee88-0.3.0}/scripts/docs_prebuild.py +0 -0
  172. {yee88-0.1.0 → yee88-0.3.0}/scripts/release_notify.py +0 -0
  173. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/api.py +0 -0
  174. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/backends.py +0 -0
  175. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/backends_helpers.py +0 -0
  176. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/cli/init.py +0 -0
  177. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/commands.py +0 -0
  178. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/config.py +0 -0
  179. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/config_migrations.py +0 -0
  180. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/config_watch.py +0 -0
  181. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/context.py +0 -0
  182. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/directives.py +0 -0
  183. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/engines.py +0 -0
  184. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/events.py +0 -0
  185. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/ids.py +0 -0
  186. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/lockfile.py +0 -0
  187. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/markdown.py +0 -0
  188. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/model.py +0 -0
  189. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/presenter.py +0 -0
  190. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/progress.py +0 -0
  191. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/router.py +0 -0
  192. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/runner.py +0 -0
  193. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/runner_bridge.py +0 -0
  194. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/runners/__init__.py +0 -0
  195. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/runners/claude.py +0 -0
  196. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/runners/codex.py +0 -0
  197. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/runners/mock.py +0 -0
  198. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/runners/opencode.py +0 -0
  199. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/runners/pi.py +0 -0
  200. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/runners/tool_actions.py +0 -0
  201. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/runtime_loader.py +0 -0
  202. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/scheduler.py +0 -0
  203. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/schemas/__init__.py +0 -0
  204. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/schemas/claude.py +0 -0
  205. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/schemas/codex.py +0 -0
  206. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/schemas/opencode.py +0 -0
  207. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/schemas/pi.py +0 -0
  208. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/settings.py +0 -0
  209. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/__init__.py +0 -0
  210. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/api_models.py +0 -0
  211. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/chat_prefs.py +0 -0
  212. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/chat_sessions.py +0 -0
  213. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/client.py +0 -0
  214. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/client_api.py +0 -0
  215. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/commands/__init__.py +0 -0
  216. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/commands/agent.py +0 -0
  217. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/commands/cancel.py +0 -0
  218. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/commands/dispatch.py +0 -0
  219. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/commands/executor.py +0 -0
  220. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/commands/file_transfer.py +0 -0
  221. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/commands/handlers.py +0 -0
  222. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/commands/media.py +0 -0
  223. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/commands/menu.py +0 -0
  224. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/commands/model.py +0 -0
  225. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/commands/overrides.py +0 -0
  226. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/commands/parse.py +0 -0
  227. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/commands/plan.py +0 -0
  228. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/commands/reasoning.py +0 -0
  229. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/commands/reply.py +0 -0
  230. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/commands/topics.py +0 -0
  231. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/commands/trigger.py +0 -0
  232. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/context.py +0 -0
  233. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/engine_defaults.py +0 -0
  234. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/engine_overrides.py +0 -0
  235. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/loop.py +0 -0
  236. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/outbox.py +0 -0
  237. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/parsing.py +0 -0
  238. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/render.py +0 -0
  239. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/state_store.py +0 -0
  240. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/topic_state.py +0 -0
  241. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/topics.py +0 -0
  242. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/trigger_mode.py +0 -0
  243. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/types.py +0 -0
  244. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/telegram/voice.py +0 -0
  245. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/transport.py +0 -0
  246. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/transport_runtime.py +0 -0
  247. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/transports.py +0 -0
  248. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/utils/__init__.py +0 -0
  249. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/utils/git.py +0 -0
  250. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/utils/json_state.py +0 -0
  251. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/utils/streams.py +0 -0
  252. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/utils/subprocess.py +0 -0
  253. {yee88-0.1.0/src/takopi → yee88-0.3.0/src/yee88}/worktrees.py +0 -0
  254. {yee88-0.1.0 → yee88-0.3.0}/tests/__init__.py +0 -0
  255. {yee88-0.1.0 → yee88-0.3.0}/tests/fixtures/claude_stream_json_session.jsonl +0 -0
  256. {yee88-0.1.0 → yee88-0.3.0}/tests/fixtures/codex_exec_json_all_formats.jsonl +0 -0
  257. {yee88-0.1.0 → yee88-0.3.0}/tests/fixtures/codex_exec_json_all_formats.txt +0 -0
  258. {yee88-0.1.0 → yee88-0.3.0}/tests/fixtures/opencode_run_json.jsonl +0 -0
  259. {yee88-0.1.0 → yee88-0.3.0}/tests/fixtures/opencode_stream_error.jsonl +0 -0
  260. {yee88-0.1.0 → yee88-0.3.0}/tests/fixtures/opencode_stream_success.jsonl +0 -0
  261. {yee88-0.1.0 → yee88-0.3.0}/tests/fixtures/opencode_stream_success_no_reason.jsonl +0 -0
  262. {yee88-0.1.0 → yee88-0.3.0}/tests/fixtures/pi_print_mode_events.jsonl +0 -0
  263. {yee88-0.1.0 → yee88-0.3.0}/tests/fixtures/pi_stream_error.jsonl +0 -0
  264. {yee88-0.1.0 → yee88-0.3.0}/tests/fixtures/pi_stream_success.jsonl +0 -0
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: takopi-release
2
+ name: yee88-release
3
3
  description: Prepare and ship a Takopi release. Use when asked to cut a release, bump release versions, update changelog/spec/readme, tag v<major.minor.patch>, or trigger the GitHub release workflow.
4
4
  ---
5
5
 
@@ -7,7 +7,7 @@ description: Prepare and ship a Takopi release. Use when asked to cut a release,
7
7
 
8
8
  ## Overview
9
9
 
10
- Prepare a tagged release that matches the GitHub Actions release workflow. The workflow requires the tag version to match both `pyproject.toml` and `src/takopi/__init__.py`.
10
+ Prepare a tagged release that matches the GitHub Actions release workflow. The workflow requires the tag version to match both `pyproject.toml` and `src/yee88/__init__.py`.
11
11
 
12
12
  ## Workflow
13
13
 
@@ -29,7 +29,7 @@ Update `changelog.md` by adding a new top section. Before writing it, study the
29
29
  Update version strings to match the release tag:
30
30
 
31
31
  - `pyproject.toml`: `project.version = "<major.minor.patch>"`
32
- - `src/takopi/__init__.py`: `__version__ = "<major.minor.patch>"`
32
+ - `src/yee88/__init__.py`: `__version__ = "<major.minor.patch>"`
33
33
  - `uv.lock`: refresh so the root package version matches (run `uv lock` or `uv sync`).
34
34
 
35
35
  ### 4) Update spec + docs
@@ -63,5 +63,5 @@ If you keep a dev version between releases, bump the minor version (reset patch
63
63
 
64
64
  ## Notes
65
65
 
66
- - The release workflow checks that the tag matches `pyproject.toml` and `src/takopi/__init__.py`.
66
+ - The release workflow checks that the tag matches `pyproject.toml` and `src/yee88/__init__.py`.
67
67
  - Keep dates consistent across `changelog.md` and `docs/specification.md`.
@@ -18,6 +18,6 @@ docs-build:
18
18
  bundle:
19
19
  #!/usr/bin/env bash
20
20
  set -euo pipefail
21
- bundle="takopi.git.bundle"
21
+ bundle="yee888.git.bundle"
22
22
  git bundle create "$bundle" --all
23
23
  open -R "$bundle"
@@ -1,11 +1,11 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: yee88
3
- Version: 0.1.0
3
+ Version: 0.3.0
4
4
  Summary: Telegram bridge for Codex, Claude Code, and other agent CLIs.
5
- Project-URL: Homepage, https://github.com/banteg/takopi
6
- Project-URL: Documentation, https://takopi.dev/
7
- Project-URL: Repository, https://github.com/banteg/takopi
8
- Project-URL: Issues, https://github.com/banteg/takopi/issues
5
+ Project-URL: Homepage, https://github.com/banteg/yee88
6
+ Project-URL: Documentation, https://yee88.dev/
7
+ Project-URL: Repository, https://github.com/banteg/yee88
8
+ Project-URL: Issues, https://github.com/banteg/yee88/issues
9
9
  Author: yee.wang
10
10
  License: MIT License
11
11
 
@@ -106,7 +106,7 @@ inspect or update settings with `yee88 config list`, `yee88 config get`, and `ye
106
106
 
107
107
  ## plugins
108
108
 
109
- takopi supports entrypoint-based plugins for engines, transports, and commands.
109
+ yee88 supports entrypoint-based plugins for engines, transports, and commands.
110
110
 
111
111
  see [`docs/how-to/write-a-plugin.md`](docs/how-to/write-a-plugin.md) and [`docs/reference/plugin-api.md`](docs/reference/plugin-api.md).
112
112
 
@@ -53,7 +53,7 @@ inspect or update settings with `yee88 config list`, `yee88 config get`, and `ye
53
53
 
54
54
  ## plugins
55
55
 
56
- takopi supports entrypoint-based plugins for engines, transports, and commands.
56
+ yee88 supports entrypoint-based plugins for engines, transports, and commands.
57
57
 
58
58
  see [`docs/how-to/write-a-plugin.md`](docs/how-to/write-a-plugin.md) and [`docs/reference/plugin-api.md`](docs/reference/plugin-api.md).
59
59
 
@@ -1,127 +1,133 @@
1
1
  # changelog
2
2
 
3
+ ## v0.2.0 (2026-01-30)
4
+
5
+ ### changes
6
+
7
+ - rename startup message from "yee88 is ready" to "yee88 is ready"
8
+
3
9
  ## v0.21.4 (2026-01-22)
4
10
 
5
11
  ### changes
6
12
 
7
- - add allowed user gate to telegram [#179](https://github.com/banteg/takopi/pull/179)
13
+ - add allowed user gate to telegram [#179](https://github.com/banteg/yee88/pull/179)
8
14
 
9
15
  ## v0.21.3 (2026-01-21)
10
16
 
11
17
  ### fixes
12
18
 
13
- - ignore implicit topic root replies in telegram [#175](https://github.com/banteg/takopi/pull/175)
19
+ - ignore implicit topic root replies in telegram [#175](https://github.com/banteg/yee88/pull/175)
14
20
 
15
21
  ## v0.21.2 (2026-01-20)
16
22
 
17
23
  ### fixes
18
24
 
19
- - clear chat sessions on cwd change [#172](https://github.com/banteg/takopi/pull/172)
25
+ - clear chat sessions on cwd change [#172](https://github.com/banteg/yee88/pull/172)
20
26
 
21
27
  ### docs
22
28
 
23
- - add takopi-slack plugin to reference [#168](https://github.com/banteg/takopi/pull/168)
29
+ - add yee88-slack plugin to reference [#168](https://github.com/banteg/yee88/pull/168)
24
30
 
25
31
  ## v0.21.1 (2026-01-18)
26
32
 
27
33
  ### fixes
28
34
 
29
- - separate telegram voice transcription client [#166](https://github.com/banteg/takopi/pull/166)
30
- - disable telegram link previews by default [#160](https://github.com/banteg/takopi/pull/160)
35
+ - separate telegram voice transcription client [#166](https://github.com/banteg/yee88/pull/166)
36
+ - disable telegram link previews by default [#160](https://github.com/banteg/yee88/pull/160)
31
37
 
32
38
  ### docs
33
39
 
34
- - align engine terminology in telegram and docs [#162](https://github.com/banteg/takopi/pull/162)
35
- - add takopi-discord plugin to plugins reference [#164](https://github.com/banteg/takopi/pull/164)
40
+ - align engine terminology in telegram and docs [#162](https://github.com/banteg/yee88/pull/162)
41
+ - add yee88-discord plugin to plugins reference [#164](https://github.com/banteg/yee88/pull/164)
36
42
 
37
43
  ## v0.21.0 (2026-01-16)
38
44
 
39
45
  ### changes
40
46
 
41
- - add `takopi config` subcommand [#153](https://github.com/banteg/takopi/pull/153)
42
- - make telegram /ctx work everywhere [#159](https://github.com/banteg/takopi/pull/159)
43
- - improve telegram command planning and testability [#158](https://github.com/banteg/takopi/pull/158)
44
- - simplify telegram loop and jsonl runner [#155](https://github.com/banteg/takopi/pull/155)
45
- - refactor telegram schemas and parsing with msgspec [#156](https://github.com/banteg/takopi/pull/156)
47
+ - add `yee88 config` subcommand [#153](https://github.com/banteg/yee88/pull/153)
48
+ - make telegram /ctx work everywhere [#159](https://github.com/banteg/yee88/pull/159)
49
+ - improve telegram command planning and testability [#158](https://github.com/banteg/yee88/pull/158)
50
+ - simplify telegram loop and jsonl runner [#155](https://github.com/banteg/yee88/pull/155)
51
+ - refactor telegram schemas and parsing with msgspec [#156](https://github.com/banteg/yee88/pull/156)
46
52
 
47
53
  ### tests
48
54
 
49
- - improve coverage and raise threshold to 80% [#154](https://github.com/banteg/takopi/pull/154)
50
- - stabilize mutmut runs and extend telegram coverage [#157](https://github.com/banteg/takopi/pull/157)
55
+ - improve coverage and raise threshold to 80% [#154](https://github.com/banteg/yee88/pull/154)
56
+ - stabilize mutmut runs and extend telegram coverage [#157](https://github.com/banteg/yee88/pull/157)
51
57
 
52
58
  ### docs
53
59
 
54
- - add opengraph meta fallbacks [#150](https://github.com/banteg/takopi/pull/150)
60
+ - add opengraph meta fallbacks [#150](https://github.com/banteg/yee88/pull/150)
55
61
 
56
62
  ## v0.20.0 (2026-01-15)
57
63
 
58
64
  ### changes
59
65
 
60
- - add telegram mentions-only trigger mode [#142](https://github.com/banteg/takopi/pull/142)
61
- - add telegram /model and /reasoning overrides [#147](https://github.com/banteg/takopi/pull/147)
62
- - coalesce forwarded telegram messages [#146](https://github.com/banteg/takopi/pull/146)
63
- - export plugin utilities for transport development [#137](https://github.com/banteg/takopi/pull/137)
66
+ - add telegram mentions-only trigger mode [#142](https://github.com/banteg/yee88/pull/142)
67
+ - add telegram /model and /reasoning overrides [#147](https://github.com/banteg/yee88/pull/147)
68
+ - coalesce forwarded telegram messages [#146](https://github.com/banteg/yee88/pull/146)
69
+ - export plugin utilities for transport development [#137](https://github.com/banteg/yee88/pull/137)
64
70
 
65
71
  ### fixes
66
72
 
67
- - handle forwarded uploads for telegram [#149](https://github.com/banteg/takopi/pull/149)
68
- - preserve directives for voice transcripts [#141](https://github.com/banteg/takopi/pull/141)
69
- - resolve claude.cmd via shutil.which on windows [#124](https://github.com/banteg/takopi/pull/124)
73
+ - handle forwarded uploads for telegram [#149](https://github.com/banteg/yee88/pull/149)
74
+ - preserve directives for voice transcripts [#141](https://github.com/banteg/yee88/pull/141)
75
+ - resolve claude.cmd via shutil.which on windows [#124](https://github.com/banteg/yee88/pull/124)
70
76
 
71
77
  ### docs
72
78
 
73
- - add takopi-scripts plugin to plugins list [#140](https://github.com/banteg/takopi/pull/140)
79
+ - add yee88-scripts plugin to plugins list [#140](https://github.com/banteg/yee88/pull/140)
74
80
 
75
81
  ## v0.19.0 (2026-01-15)
76
82
 
77
83
  ### changes
78
84
 
79
- - overhaul onboarding with persona-based setup flows [#132](https://github.com/banteg/takopi/pull/132)
80
- - add queued cancel placeholder for Telegram runs [#136](https://github.com/banteg/takopi/pull/136)
81
- - prefix Telegram voice transcriptions for agent awareness [#135](https://github.com/banteg/takopi/pull/135)
85
+ - overhaul onboarding with persona-based setup flows [#132](https://github.com/banteg/yee88/pull/132)
86
+ - add queued cancel placeholder for Telegram runs [#136](https://github.com/banteg/yee88/pull/136)
87
+ - prefix Telegram voice transcriptions for agent awareness [#135](https://github.com/banteg/yee88/pull/135)
82
88
 
83
89
  ### docs
84
90
 
85
- - refresh onboarding docs with new widgets and hero flow [#138](https://github.com/banteg/takopi/pull/138)
86
- - fix docs site mobile layout and font consistency [#139](https://github.com/banteg/takopi/pull/139)
87
- - link to takopi.dev docs site
91
+ - refresh onboarding docs with new widgets and hero flow [#138](https://github.com/banteg/yee88/pull/138)
92
+ - fix docs site mobile layout and font consistency [#139](https://github.com/banteg/yee88/pull/139)
93
+ - link to yee88.dev docs site
88
94
 
89
95
  ## v0.18.0 (2026-01-13)
90
96
 
91
97
  ### changes
92
98
 
93
- - add per-chat and per-topic default agent via `/agent set` command [#109](https://github.com/banteg/takopi/pull/109)
94
- - add session resume shorthand for pi runner [#113](https://github.com/banteg/takopi/pull/113)
95
- - expose `sender_id` and `raw` fields on `MessageRef` for plugins [#112](https://github.com/banteg/takopi/pull/112)
99
+ - add per-chat and per-topic default agent via `/agent set` command [#109](https://github.com/banteg/yee88/pull/109)
100
+ - add session resume shorthand for pi runner [#113](https://github.com/banteg/yee88/pull/113)
101
+ - expose `sender_id` and `raw` fields on `MessageRef` for plugins [#112](https://github.com/banteg/yee88/pull/112)
96
102
 
97
103
  ### fixes
98
104
 
99
- - recreate stale topic bindings when topic is deleted and recreated [#127](https://github.com/banteg/takopi/pull/127)
100
- - use stdout session header for pi runner [#126](https://github.com/banteg/takopi/pull/126)
105
+ - recreate stale topic bindings when topic is deleted and recreated [#127](https://github.com/banteg/yee88/pull/127)
106
+ - use stdout session header for pi runner [#126](https://github.com/banteg/yee88/pull/126)
101
107
 
102
108
  ### docs
103
109
 
104
- - restructure docs into diataxis format and switch to zensical [#121](https://github.com/banteg/takopi/pull/121) [#125](https://github.com/banteg/takopi/pull/125)
110
+ - restructure docs into diataxis format and switch to zensical [#121](https://github.com/banteg/yee88/pull/121) [#125](https://github.com/banteg/yee88/pull/125)
105
111
 
106
112
  ## v0.17.1 (2026-01-12)
107
113
 
108
114
  ### fixes
109
115
 
110
- - fix telegram /new command crash [#106](https://github.com/banteg/takopi/pull/106)
111
- - track telegram sessions for plugin runs [#107](https://github.com/banteg/takopi/pull/107)
112
- - align telegram prompt upload resume flow [#105](https://github.com/banteg/takopi/pull/105)
116
+ - fix telegram /new command crash [#106](https://github.com/banteg/yee88/pull/106)
117
+ - track telegram sessions for plugin runs [#107](https://github.com/banteg/yee88/pull/107)
118
+ - align telegram prompt upload resume flow [#105](https://github.com/banteg/yee88/pull/105)
113
119
 
114
120
  ## v0.17.0 (2026-01-12)
115
121
 
116
122
  ### changes
117
123
 
118
- - add chat session mode (`session_mode = "chat"`) for auto-resume per chat without replying, reset with `/new` [#102](https://github.com/banteg/takopi/pull/102)
119
- - add `message_overflow = "split"` to send long responses as multiple messages instead of trimming [#101](https://github.com/banteg/takopi/pull/101)
120
- - add `show_resume_line` option to hide resume lines when auto-resume is available [#100](https://github.com/banteg/takopi/pull/100)
121
- - add `auto_put_mode = "prompt"` to start a run with the caption after uploading a file [#97](https://github.com/banteg/takopi/pull/97)
122
- - expose `thread_id` to plugins via run context [#99](https://github.com/banteg/takopi/pull/99)
123
- - use tomli-w for config serialization [#103](https://github.com/banteg/takopi/pull/103)
124
- - add `voice_transcription_model` setting for local whisper servers [#98](https://github.com/banteg/takopi/pull/98)
124
+ - add chat session mode (`session_mode = "chat"`) for auto-resume per chat without replying, reset with `/new` [#102](https://github.com/banteg/yee88/pull/102)
125
+ - add `message_overflow = "split"` to send long responses as multiple messages instead of trimming [#101](https://github.com/banteg/yee88/pull/101)
126
+ - add `show_resume_line` option to hide resume lines when auto-resume is available [#100](https://github.com/banteg/yee88/pull/100)
127
+ - add `auto_put_mode = "prompt"` to start a run with the caption after uploading a file [#97](https://github.com/banteg/yee88/pull/97)
128
+ - expose `thread_id` to plugins via run context [#99](https://github.com/banteg/yee88/pull/99)
129
+ - use tomli-w for config serialization [#103](https://github.com/banteg/yee88/pull/103)
130
+ - add `voice_transcription_model` setting for local whisper servers [#98](https://github.com/banteg/yee88/pull/98)
125
131
 
126
132
  ### docs
127
133
 
@@ -131,12 +137,12 @@
131
137
 
132
138
  ### fixes
133
139
 
134
- - harden telegram file transfer handling [#84](https://github.com/banteg/takopi/pull/84)
140
+ - harden telegram file transfer handling [#84](https://github.com/banteg/yee88/pull/84)
135
141
 
136
142
  ### changes
137
143
 
138
- - simplify runtime, config, and telegram internals [#85](https://github.com/banteg/takopi/pull/85)
139
- - refactor telegram boundary types [#90](https://github.com/banteg/takopi/pull/90)
144
+ - simplify runtime, config, and telegram internals [#85](https://github.com/banteg/yee88/pull/85)
145
+ - refactor telegram boundary types [#90](https://github.com/banteg/yee88/pull/90)
140
146
 
141
147
  ### docs
142
148
 
@@ -147,44 +153,44 @@
147
153
 
148
154
  ### changes
149
155
 
150
- - add telegram file transfer support [#83](https://github.com/banteg/takopi/pull/83)
156
+ - add telegram file transfer support [#83](https://github.com/banteg/yee88/pull/83)
151
157
 
152
158
  ### docs
153
159
 
154
- - document telegram file transfers [#83](https://github.com/banteg/takopi/pull/83)
160
+ - document telegram file transfers [#83](https://github.com/banteg/yee88/pull/83)
155
161
 
156
162
  ## v0.14.1 (2026-01-10)
157
163
 
158
164
  ### changes
159
165
 
160
- - add topic scope and thread-aware replies for telegram topics [#81](https://github.com/banteg/takopi/pull/81)
166
+ - add topic scope and thread-aware replies for telegram topics [#81](https://github.com/banteg/yee88/pull/81)
161
167
 
162
168
  ### docs
163
169
 
164
- - update telegram topics docs and user guide for topic scoping [#81](https://github.com/banteg/takopi/pull/81)
170
+ - update telegram topics docs and user guide for topic scoping [#81](https://github.com/banteg/yee88/pull/81)
165
171
 
166
172
  ## v0.14.0 (2026-01-10)
167
173
 
168
174
  ### changes
169
175
 
170
- - add telegram forum topics support with `/topic` command for binding threads to projects/branches, persistent resume tokens per topic, and `/ctx` for inspecting or updating bindings [#80](https://github.com/banteg/takopi/pull/80)
171
- - add inline cancel button to progress messages [#79](https://github.com/banteg/takopi/pull/79)
172
- - add config hot-reload via watchfiles [#78](https://github.com/banteg/takopi/pull/78)
176
+ - add telegram forum topics support with `/topic` command for binding threads to projects/branches, persistent resume tokens per topic, and `/ctx` for inspecting or updating bindings [#80](https://github.com/banteg/yee88/pull/80)
177
+ - add inline cancel button to progress messages [#79](https://github.com/banteg/yee88/pull/79)
178
+ - add config hot-reload via watchfiles [#78](https://github.com/banteg/yee88/pull/78)
173
179
 
174
180
  ### docs
175
181
 
176
- - add user guide and telegram topics documentation [#80](https://github.com/banteg/takopi/pull/80)
182
+ - add user guide and telegram topics documentation [#80](https://github.com/banteg/yee88/pull/80)
177
183
 
178
184
  ## v0.13.0 (2026-01-09)
179
185
 
180
186
  ### changes
181
187
 
182
- - add per-project chat routing [#76](https://github.com/banteg/takopi/pull/76)
188
+ - add per-project chat routing [#76](https://github.com/banteg/yee88/pull/76)
183
189
 
184
190
  ### fixes
185
191
 
186
- - hardcode codex exec flags [#75](https://github.com/banteg/takopi/pull/75)
187
- - reuse project root for current branch when resolving worktrees [#77](https://github.com/banteg/takopi/pull/77)
192
+ - hardcode codex exec flags [#75](https://github.com/banteg/yee88/pull/75)
193
+ - reuse project root for current branch when resolving worktrees [#77](https://github.com/banteg/yee88/pull/77)
188
194
 
189
195
  ### docs
190
196
 
@@ -194,52 +200,52 @@
194
200
 
195
201
  ### changes
196
202
 
197
- - add optional telegram voice note transcription (routes transcript like typed text) [#74](https://github.com/banteg/takopi/pull/74)
203
+ - add optional telegram voice note transcription (routes transcript like typed text) [#74](https://github.com/banteg/yee88/pull/74)
198
204
 
199
205
  ### fixes
200
206
 
201
- - fix plugin allowlist matching and windows session paths [#72](https://github.com/banteg/takopi/pull/72)
207
+ - fix plugin allowlist matching and windows session paths [#72](https://github.com/banteg/yee88/pull/72)
202
208
 
203
209
  ### docs
204
210
 
205
- - document telegram voice transcription settings [#74](https://github.com/banteg/takopi/pull/74)
211
+ - document telegram voice transcription settings [#74](https://github.com/banteg/yee88/pull/74)
206
212
 
207
213
  ## v0.11.0 (2026-01-08)
208
214
 
209
215
  ### changes
210
216
 
211
- - add entrypoint-based plugins for engines/transports plus a `takopi plugins` command and public API docs [#71](https://github.com/banteg/takopi/pull/71)
217
+ - add entrypoint-based plugins for engines/transports plus a `yee88 plugins` command and public API docs [#71](https://github.com/banteg/yee88/pull/71)
212
218
 
213
219
  ### fixes
214
220
 
215
- - create pi sessions under the run base dir [#68](https://github.com/banteg/takopi/pull/68)
216
- - skip git repo checks for codex runs [#66](https://github.com/banteg/takopi/pull/66)
221
+ - create pi sessions under the run base dir [#68](https://github.com/banteg/yee88/pull/68)
222
+ - skip git repo checks for codex runs [#66](https://github.com/banteg/yee88/pull/66)
217
223
 
218
224
  ## v0.10.0 (2026-01-08)
219
225
 
220
226
  ### changes
221
227
 
222
- - add transport registry with `--transport` overrides and a `takopi transports` command [#69](https://github.com/banteg/takopi/pull/69)
223
- - migrate config loading to pydantic-settings and move telegram credentials under `[transports.telegram]` [#65](https://github.com/banteg/takopi/pull/65)
224
- - include project aliases in the telegram slash-command menu with validation and limits [#67](https://github.com/banteg/takopi/pull/67)
228
+ - add transport registry with `--transport` overrides and a `yee88 transports` command [#69](https://github.com/banteg/yee88/pull/69)
229
+ - migrate config loading to pydantic-settings and move telegram credentials under `[transports.telegram]` [#65](https://github.com/banteg/yee88/pull/65)
230
+ - include project aliases in the telegram slash-command menu with validation and limits [#67](https://github.com/banteg/yee88/pull/67)
225
231
 
226
232
  ### fixes
227
233
 
228
- - validate worktree roots instead of treating nested paths as worktrees [#63](https://github.com/banteg/takopi/pull/63)
229
- - harden onboarding with clearer config errors, safe backups, and refreshed command menu wording [#70](https://github.com/banteg/takopi/pull/70)
234
+ - validate worktree roots instead of treating nested paths as worktrees [#63](https://github.com/banteg/yee88/pull/63)
235
+ - harden onboarding with clearer config errors, safe backups, and refreshed command menu wording [#70](https://github.com/banteg/yee88/pull/70)
230
236
 
231
237
  ### docs
232
238
 
233
239
  - add architecture and lifecycle diagrams
234
- - call out the default worktrees directory [#64](https://github.com/banteg/takopi/pull/64)
235
- - document the transport registry and onboarding changes [#69](https://github.com/banteg/takopi/pull/69)
240
+ - call out the default worktrees directory [#64](https://github.com/banteg/yee88/pull/64)
241
+ - document the transport registry and onboarding changes [#69](https://github.com/banteg/yee88/pull/69)
236
242
 
237
243
  ## v0.9.0 (2026-01-07)
238
244
 
239
245
  ### projects and worktrees
240
246
 
241
- - register repos with `takopi init <alias>` and target them via `/project` directives
242
- - route runs to git worktrees with `@branch` — takopi resolves or creates worktrees automatically
247
+ - register repos with `yee88 init <alias>` and target them via `/project` directives
248
+ - route runs to git worktrees with `@branch` — yee88 resolves or creates worktrees automatically
243
249
  - replies preserve context via `ctx: project @branch` footers, no need to repeat directives
244
250
  - set `default_project` to skip the `/project` prefix entirely
245
251
  - per-project `default_engine` and `worktree_base` configuration
@@ -247,7 +253,7 @@
247
253
  ### changes
248
254
 
249
255
  - transport/presenter protocols plus transport-agnostic `exec_bridge`
250
- - move telegram polling + wiring into `takopi.telegram` with transport/presenter adapters
256
+ - move telegram polling + wiring into `yee88.telegram` with transport/presenter adapters
251
257
  - list configured projects in the startup banner
252
258
 
253
259
  ### fixes
@@ -256,21 +262,21 @@
256
262
 
257
263
  ### breaking
258
264
 
259
- - remove `takopi.bridge`; use `takopi.runner_bridge` and `takopi.telegram` instead
265
+ - remove `yee88.bridge`; use `yee88.runner_bridge` and `yee88.telegram` instead
260
266
 
261
267
  ### docs
262
268
 
263
- - add a projects/worktrees guide and document `takopi init` behavior in the readme
269
+ - add a projects/worktrees guide and document `yee88 init` behavior in the readme
264
270
 
265
271
  ## v0.8.0 (2026-01-05)
266
272
 
267
273
  ### changes
268
274
 
269
- - queue telegram requests with rate limits and retry-after backoff [#54](https://github.com/banteg/takopi/pull/54)
275
+ - queue telegram requests with rate limits and retry-after backoff [#54](https://github.com/banteg/yee88/pull/54)
270
276
 
271
277
  ### docs
272
278
 
273
- - improve documentation coverage [#52](https://github.com/banteg/takopi/pull/52)
279
+ - improve documentation coverage [#52](https://github.com/banteg/yee88/pull/52)
274
280
  - align runner guide with factory pattern
275
281
  - add missing pr links in the changelog
276
282
 
@@ -278,22 +284,22 @@
278
284
 
279
285
  ### changes
280
286
 
281
- - migrate logging to structlog with structured pipelines and redaction [#46](https://github.com/banteg/takopi/pull/46)
282
- - add msgspec schemas for jsonl decoding across runners [#37](https://github.com/banteg/takopi/pull/37)
287
+ - migrate logging to structlog with structured pipelines and redaction [#46](https://github.com/banteg/yee88/pull/46)
288
+ - add msgspec schemas for jsonl decoding across runners [#37](https://github.com/banteg/yee88/pull/37)
283
289
 
284
290
  ## v0.6.0 (2026-01-03)
285
291
 
286
292
  ### changes
287
293
 
288
- - interactive onboarding: run `takopi` to set up bot token, chat id, and default engine via guided prompts [#39](https://github.com/banteg/takopi/pull/39)
289
- - lockfile to prevent multiple takopi instances from racing the same bot token [#30](https://github.com/banteg/takopi/pull/30)
290
- - re-run onboarding anytime with `takopi --onboard`
294
+ - interactive onboarding: run `yee88` to set up bot token, chat id, and default engine via guided prompts [#39](https://github.com/banteg/yee88/pull/39)
295
+ - lockfile to prevent multiple yee88 instances from racing the same bot token [#30](https://github.com/banteg/yee88/pull/30)
296
+ - re-run onboarding anytime with `yee88 --onboard`
291
297
 
292
298
  ## v0.5.3 (2026-01-02)
293
299
 
294
300
  ### changes
295
301
 
296
- - default claude allowed tools to `["Bash", "Read", "Edit", "Write"]` when not configured [#29](https://github.com/banteg/takopi/pull/29)
302
+ - default claude allowed tools to `["Bash", "Read", "Edit", "Write"]` when not configured [#29](https://github.com/banteg/yee88/pull/29)
297
303
 
298
304
  ## v0.5.2 (2026-01-02)
299
305
 
@@ -303,50 +309,50 @@
303
309
 
304
310
  ### fixes
305
311
 
306
- - treat codex reconnect notices as non-fatal progress updates instead of errors [#27](https://github.com/banteg/takopi/pull/27)
307
- - avoid crashes when codex tool/file-change events omit error fields [#27](https://github.com/banteg/takopi/pull/27)
312
+ - treat codex reconnect notices as non-fatal progress updates instead of errors [#27](https://github.com/banteg/yee88/pull/27)
313
+ - avoid crashes when codex tool/file-change events omit error fields [#27](https://github.com/banteg/yee88/pull/27)
308
314
 
309
315
  ## v0.5.1 (2026-01-02)
310
316
 
311
317
  ### changes
312
318
 
313
- - relax telegram ACL to check chat id only, enabling use in group chats and channels [#26](https://github.com/banteg/takopi/pull/26)
314
- - improve onboarding documentation and add tests [#25](https://github.com/banteg/takopi/pull/25)
319
+ - relax telegram ACL to check chat id only, enabling use in group chats and channels [#26](https://github.com/banteg/yee88/pull/26)
320
+ - improve onboarding documentation and add tests [#25](https://github.com/banteg/yee88/pull/25)
315
321
 
316
322
  ## v0.5.0 (2026-01-02)
317
323
 
318
324
  ### changes
319
325
 
320
- - add an opencode runner via the `opencode` cli with json event parsing and resume support [#22](https://github.com/banteg/takopi/pull/22)
321
- - add a pi agent runner via the `pi` cli with jsonl streaming and resume support [#24](https://github.com/banteg/takopi/pull/24)
326
+ - add an opencode runner via the `opencode` cli with json event parsing and resume support [#22](https://github.com/banteg/yee88/pull/22)
327
+ - add a pi agent runner via the `pi` cli with jsonl streaming and resume support [#24](https://github.com/banteg/yee88/pull/24)
322
328
  - document the opencode and pi runners, event mappings, and stream capture tips
323
329
 
324
330
  ### fixes
325
331
 
326
- - fix path relativization so progress output does not strip sibling directories [#23](https://github.com/banteg/takopi/pull/23)
332
+ - fix path relativization so progress output does not strip sibling directories [#23](https://github.com/banteg/yee88/pull/23)
327
333
  - reduce noisy debug logging from markdown_it/httpcore
328
334
 
329
335
  ## v0.4.0 (2026-01-02)
330
336
 
331
337
  ### changes
332
338
 
333
- - add auto-router runner selection with configurable default engine [#15](https://github.com/banteg/takopi/pull/15)
339
+ - add auto-router runner selection with configurable default engine [#15](https://github.com/banteg/yee88/pull/15)
334
340
  - make auto-router the default entrypoint; subcommands or `/{engine}` prefixes override for new threads
335
341
  - add `/cancel` + `/{engine}` command menu sync on startup
336
342
  - show engine name in progress and final message headers
337
- - omit progress/action log lines from final output for cleaner answers [#21](https://github.com/banteg/takopi/pull/21)
343
+ - omit progress/action log lines from final output for cleaner answers [#21](https://github.com/banteg/yee88/pull/21)
338
344
 
339
345
  ### fixes
340
346
 
341
- - improve codex exec error rendering with stderr extraction [#18](https://github.com/banteg/takopi/pull/18)
342
- - preserve markdown formatting and resume footer when trimming long responses [#20](https://github.com/banteg/takopi/pull/20)
347
+ - improve codex exec error rendering with stderr extraction [#18](https://github.com/banteg/yee88/pull/18)
348
+ - preserve markdown formatting and resume footer when trimming long responses [#20](https://github.com/banteg/yee88/pull/20)
343
349
 
344
350
  ## v0.3.0 (2026-01-01)
345
351
 
346
352
  ### changes
347
353
 
348
- - add a claude code runner via the `claude` cli with stream-json parsing and resume support [#9](https://github.com/banteg/takopi/pull/9)
349
- - auto-discover engine backends and generate cli subcommands from the registry [#12](https://github.com/banteg/takopi/pull/12)
354
+ - add a claude code runner via the `claude` cli with stream-json parsing and resume support [#9](https://github.com/banteg/yee88/pull/9)
355
+ - auto-discover engine backends and generate cli subcommands from the registry [#12](https://github.com/banteg/yee88/pull/12)
350
356
  - add `BaseRunner` session locking plus a `JsonlSubprocessRunner` helper for jsonl subprocess engines
351
357
  - add jsonl stream parsing and subprocess helpers for runners
352
358
  - lazily allocate per-session locks and streamline backend setup/install metadata
@@ -371,12 +377,12 @@
371
377
 
372
378
  ### changes
373
379
 
374
- - introduce runner protocol for multi-engine support [#7](https://github.com/banteg/takopi/pull/7)
380
+ - introduce runner protocol for multi-engine support [#7](https://github.com/banteg/yee88/pull/7)
375
381
  - normalized event model (`started`, `action`, `completed`)
376
382
  - actions with stable ids, lifecycle phases, and structured details
377
383
  - engine-agnostic bridge and renderer
378
- - add `/cancel` command with progress message targeting [#4](https://github.com/banteg/takopi/pull/4)
379
- - migrate async runtime from asyncio to anyio [#6](https://github.com/banteg/takopi/pull/6)
384
+ - add `/cancel` command with progress message targeting [#4](https://github.com/banteg/yee88/pull/4)
385
+ - migrate async runtime from asyncio to anyio [#6](https://github.com/banteg/yee88/pull/6)
380
386
  - stream runner events via async iterators (natural backpressure)
381
387
  - per-thread job queues with serialization for same-thread runs
382
388
  - render resume as `codex resume <token>` command lines
@@ -390,8 +396,8 @@
390
396
  ### fixes
391
397
 
392
398
  - serialize new sessions once resume token is known
393
- - preserve resume tokens in error renders [#3](https://github.com/banteg/takopi/pull/3)
394
- - preserve file-change paths in action events [#2](https://github.com/banteg/takopi/pull/2)
399
+ - preserve resume tokens in error renders [#3](https://github.com/banteg/yee88/pull/3)
400
+ - preserve file-change paths in action events [#2](https://github.com/banteg/yee88/pull/2)
395
401
  - terminate codex process groups on cancel (posix)
396
402
  - correct resume command matching in bridge
397
403
 
@@ -82,13 +82,13 @@ flowchart TB
82
82
 
83
83
  Takopi discovers plugins via Python entrypoints and keeps loading lazy:
84
84
 
85
- - **Engine backends** (`takopi.engine_backends`)
86
- - **Transport backends** (`takopi.transport_backends`)
87
- - **Command backends** (`takopi.command_backends`)
85
+ - **Engine backends** (`yee88.engine_backends`)
86
+ - **Transport backends** (`yee88.transport_backends`)
87
+ - **Command backends** (`yee88.command_backends`)
88
88
 
89
89
  Entrypoint names become plugin IDs, are validated up front (reserved names, regex),
90
90
  and are only loaded when needed. The public surface for plugin authors lives in
91
- `takopi.api`, while transports and commands interact with core routing via
91
+ `yee88.api`, while transports and commands interact with core routing via
92
92
  `TransportRuntime`.
93
93
 
94
94
  ---
@@ -318,12 +318,12 @@ flowchart TD
318
318
 
319
319
  ```mermaid
320
320
  flowchart LR
321
- subgraph Config["~/.takopi/"]
322
- toml[takopi.toml]
323
- lock[takopi.lock]
321
+ subgraph Config["~/.yee88/"]
322
+ toml[yee88.toml]
323
+ lock[yee88.lock]
324
324
  end
325
325
 
326
- subgraph toml_contents["takopi.toml"]
326
+ subgraph toml_contents["yee88.toml"]
327
327
  direction TB
328
328
  global["transport<br/>default_engine<br/>default_project"]
329
329
  telegram_cfg["[transports.telegram]<br/>bot_token = ...<br/>chat_id = ..."]
@@ -30,7 +30,7 @@ This page is a high-level map of Takopi’s internal modules: what they do and h
30
30
 
31
31
  | Module | Responsibility |
32
32
  |--------|----------------|
33
- | `progress.py` | Progress tracking: reduces takopi events into progress snapshots. |
33
+ | `progress.py` | Progress tracking: reduces yee88 events into progress snapshots. |
34
34
  | `markdown.py` | Markdown formatting for progress/final messages; includes helpers like elapsed formatting. |
35
35
  | `presenter.py` | Presenter protocol: converts `ProgressState` into transport-specific messages. |
36
36
  | `transport.py` | Transport protocol: send/edit/delete abstractions and message reference types. |
@@ -54,7 +54,7 @@ This page is a high-level map of Takopi’s internal modules: what they do and h
54
54
  | `transports.py` | Transport backend discovery and loading via entrypoints. |
55
55
  | `commands.py` | Command backend discovery and loading via entrypoints; command execution helpers. |
56
56
  | `ids.py` | Shared ID regex and collision checks for plugin ids and Telegram command names. |
57
- | `api.py` | Public plugin API boundary (`takopi.api` re-exports). |
57
+ | `api.py` | Public plugin API boundary (`yee88.api` re-exports). |
58
58
 
59
59
  ## Runners and schemas
60
60
 
@@ -67,7 +67,7 @@ This page is a high-level map of Takopi’s internal modules: what they do and h
67
67
 
68
68
  | Module | Responsibility |
69
69
  |--------|----------------|
70
- | `settings.py` | Loads `takopi.toml` (TOML + env), validates with pydantic-settings. |
70
+ | `settings.py` | Loads `yee88.toml` (TOML + env), validates with pydantic-settings. |
71
71
  | `config_store.py` | Raw TOML read/write (merge/update without clobbering extra sections). |
72
72
  | `config_migrations.py` | One-time edits to on-disk config (e.g. legacy Telegram key migration). |
73
73