yee88 0.1.0__tar.gz → 0.2.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 (261) hide show
  1. {yee88-0.1.0 → yee88-0.2.0}/PKG-INFO +1 -1
  2. {yee88-0.1.0 → yee88-0.2.0}/changelog.md +6 -0
  3. {yee88-0.1.0 → yee88-0.2.0}/docs/tutorials/first-run.md +2 -2
  4. {yee88-0.1.0 → yee88-0.2.0}/pyproject.toml +1 -1
  5. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/backend.py +1 -1
  6. {yee88-0.1.0 → yee88-0.2.0}/tests/test_telegram_backend.py +1 -1
  7. {yee88-0.1.0 → yee88-0.2.0}/.codex/AGENTS.md +0 -0
  8. {yee88-0.1.0 → yee88-0.2.0}/.codex/skills/takopi-release/SKILL.md +0 -0
  9. {yee88-0.1.0 → yee88-0.2.0}/.github/workflows/ci.yml +0 -0
  10. {yee88-0.1.0 → yee88-0.2.0}/.github/workflows/release.yml +0 -0
  11. {yee88-0.1.0 → yee88-0.2.0}/.gitignore +0 -0
  12. {yee88-0.1.0 → yee88-0.2.0}/Justfile +0 -0
  13. {yee88-0.1.0 → yee88-0.2.0}/LICENSE +0 -0
  14. {yee88-0.1.0 → yee88-0.2.0}/README.md +0 -0
  15. {yee88-0.1.0 → yee88-0.2.0}/docs/assets/favicon.svg +0 -0
  16. {yee88-0.1.0 → yee88-0.2.0}/docs/assets/logo.svg +0 -0
  17. {yee88-0.1.0 → yee88-0.2.0}/docs/assets/og-image.jpg +0 -0
  18. {yee88-0.1.0 → yee88-0.2.0}/docs/assets/takopi.svg +0 -0
  19. {yee88-0.1.0 → yee88-0.2.0}/docs/developing.md +0 -0
  20. {yee88-0.1.0 → yee88-0.2.0}/docs/explanation/architecture.md +0 -0
  21. {yee88-0.1.0 → yee88-0.2.0}/docs/explanation/index.md +0 -0
  22. {yee88-0.1.0 → yee88-0.2.0}/docs/explanation/module-map.md +0 -0
  23. {yee88-0.1.0 → yee88-0.2.0}/docs/explanation/plugin-system.md +0 -0
  24. {yee88-0.1.0 → yee88-0.2.0}/docs/explanation/routing-and-sessions.md +0 -0
  25. {yee88-0.1.0 → yee88-0.2.0}/docs/how-to/add-a-runner.md +0 -0
  26. {yee88-0.1.0 → yee88-0.2.0}/docs/how-to/chat-sessions.md +0 -0
  27. {yee88-0.1.0 → yee88-0.2.0}/docs/how-to/dev-setup.md +0 -0
  28. {yee88-0.1.0 → yee88-0.2.0}/docs/how-to/file-transfer.md +0 -0
  29. {yee88-0.1.0 → yee88-0.2.0}/docs/how-to/index.md +0 -0
  30. {yee88-0.1.0 → yee88-0.2.0}/docs/how-to/projects.md +0 -0
  31. {yee88-0.1.0 → yee88-0.2.0}/docs/how-to/route-by-chat.md +0 -0
  32. {yee88-0.1.0 → yee88-0.2.0}/docs/how-to/schedule-tasks.md +0 -0
  33. {yee88-0.1.0 → yee88-0.2.0}/docs/how-to/switch-engines.md +0 -0
  34. {yee88-0.1.0 → yee88-0.2.0}/docs/how-to/topics.md +0 -0
  35. {yee88-0.1.0 → yee88-0.2.0}/docs/how-to/troubleshooting.md +0 -0
  36. {yee88-0.1.0 → yee88-0.2.0}/docs/how-to/voice-notes.md +0 -0
  37. {yee88-0.1.0 → yee88-0.2.0}/docs/how-to/worktrees.md +0 -0
  38. {yee88-0.1.0 → yee88-0.2.0}/docs/how-to/write-a-plugin.md +0 -0
  39. {yee88-0.1.0 → yee88-0.2.0}/docs/index.md +0 -0
  40. {yee88-0.1.0 → yee88-0.2.0}/docs/javascripts/hero-chat.js +0 -0
  41. {yee88-0.1.0 → yee88-0.2.0}/docs/overrides/.icons/takopi/takopi.svg +0 -0
  42. {yee88-0.1.0 → yee88-0.2.0}/docs/overrides/main.html +0 -0
  43. {yee88-0.1.0 → yee88-0.2.0}/docs/plugins.md +0 -0
  44. {yee88-0.1.0 → yee88-0.2.0}/docs/reference/agents/index.md +0 -0
  45. {yee88-0.1.0 → yee88-0.2.0}/docs/reference/agents/invariants.md +0 -0
  46. {yee88-0.1.0 → yee88-0.2.0}/docs/reference/agents/repo-map.md +0 -0
  47. {yee88-0.1.0 → yee88-0.2.0}/docs/reference/commands-and-directives.md +0 -0
  48. {yee88-0.1.0 → yee88-0.2.0}/docs/reference/config.md +0 -0
  49. {yee88-0.1.0 → yee88-0.2.0}/docs/reference/context-resolution.md +0 -0
  50. {yee88-0.1.0 → yee88-0.2.0}/docs/reference/env-vars.md +0 -0
  51. {yee88-0.1.0 → yee88-0.2.0}/docs/reference/index.md +0 -0
  52. {yee88-0.1.0 → yee88-0.2.0}/docs/reference/plugin-api.md +0 -0
  53. {yee88-0.1.0 → yee88-0.2.0}/docs/reference/plugins.md +0 -0
  54. {yee88-0.1.0 → yee88-0.2.0}/docs/reference/runners/claude/runner.md +0 -0
  55. {yee88-0.1.0 → yee88-0.2.0}/docs/reference/runners/claude/stream-json-cheatsheet.md +0 -0
  56. {yee88-0.1.0 → yee88-0.2.0}/docs/reference/runners/claude/takopi-events.md +0 -0
  57. {yee88-0.1.0 → yee88-0.2.0}/docs/reference/runners/codex/exec-json-cheatsheet.md +0 -0
  58. {yee88-0.1.0 → yee88-0.2.0}/docs/reference/runners/codex/takopi-events.md +0 -0
  59. {yee88-0.1.0 → yee88-0.2.0}/docs/reference/runners/index.md +0 -0
  60. {yee88-0.1.0 → yee88-0.2.0}/docs/reference/runners/opencode/runner.md +0 -0
  61. {yee88-0.1.0 → yee88-0.2.0}/docs/reference/runners/opencode/stream-json-cheatsheet.md +0 -0
  62. {yee88-0.1.0 → yee88-0.2.0}/docs/reference/runners/opencode/takopi-events.md +0 -0
  63. {yee88-0.1.0 → yee88-0.2.0}/docs/reference/runners/pi/runner.md +0 -0
  64. {yee88-0.1.0 → yee88-0.2.0}/docs/reference/runners/pi/stream-json-cheatsheet.md +0 -0
  65. {yee88-0.1.0 → yee88-0.2.0}/docs/reference/runners/pi/takopi-events.md +0 -0
  66. {yee88-0.1.0 → yee88-0.2.0}/docs/reference/specification.md +0 -0
  67. {yee88-0.1.0 → yee88-0.2.0}/docs/reference/transports/telegram.md +0 -0
  68. {yee88-0.1.0 → yee88-0.2.0}/docs/stylesheets/admonitions.css +0 -0
  69. {yee88-0.1.0 → yee88-0.2.0}/docs/stylesheets/hero-chat.css +0 -0
  70. {yee88-0.1.0 → yee88-0.2.0}/docs/stylesheets/workflow-preview.css +0 -0
  71. {yee88-0.1.0 → yee88-0.2.0}/docs/tutorials/conversation-modes.md +0 -0
  72. {yee88-0.1.0 → yee88-0.2.0}/docs/tutorials/index.md +0 -0
  73. {yee88-0.1.0 → yee88-0.2.0}/docs/tutorials/install.md +0 -0
  74. {yee88-0.1.0 → yee88-0.2.0}/docs/tutorials/multi-engine.md +0 -0
  75. {yee88-0.1.0 → yee88-0.2.0}/docs/tutorials/projects-and-branches.md +0 -0
  76. {yee88-0.1.0 → yee88-0.2.0}/docs/user-guide.md +0 -0
  77. {yee88-0.1.0 → yee88-0.2.0}/readme.md +0 -0
  78. {yee88-0.1.0 → yee88-0.2.0}/scripts/commit_notify.py +0 -0
  79. {yee88-0.1.0 → yee88-0.2.0}/scripts/docs_build_cf.sh +0 -0
  80. {yee88-0.1.0 → yee88-0.2.0}/scripts/docs_prebuild.py +0 -0
  81. {yee88-0.1.0 → yee88-0.2.0}/scripts/onboarding_preview.py +0 -0
  82. {yee88-0.1.0 → yee88-0.2.0}/scripts/release_notify.py +0 -0
  83. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/__init__.py +0 -0
  84. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/api.py +0 -0
  85. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/backends.py +0 -0
  86. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/backends_helpers.py +0 -0
  87. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/cli/__init__.py +0 -0
  88. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/cli/config.py +0 -0
  89. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/cli/doctor.py +0 -0
  90. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/cli/init.py +0 -0
  91. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/cli/onboarding_cmd.py +0 -0
  92. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/cli/plugins.py +0 -0
  93. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/cli/run.py +0 -0
  94. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/cli/topic.py +0 -0
  95. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/commands.py +0 -0
  96. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/config.py +0 -0
  97. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/config_migrations.py +0 -0
  98. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/config_watch.py +0 -0
  99. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/context.py +0 -0
  100. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/directives.py +0 -0
  101. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/engines.py +0 -0
  102. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/events.py +0 -0
  103. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/ids.py +0 -0
  104. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/lockfile.py +0 -0
  105. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/logging.py +0 -0
  106. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/markdown.py +0 -0
  107. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/model.py +0 -0
  108. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/plugins.py +0 -0
  109. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/presenter.py +0 -0
  110. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/progress.py +0 -0
  111. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/router.py +0 -0
  112. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/runner.py +0 -0
  113. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/runner_bridge.py +0 -0
  114. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/runners/__init__.py +0 -0
  115. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/runners/claude.py +0 -0
  116. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/runners/codex.py +0 -0
  117. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/runners/mock.py +0 -0
  118. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/runners/opencode.py +0 -0
  119. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/runners/pi.py +0 -0
  120. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/runners/run_options.py +0 -0
  121. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/runners/tool_actions.py +0 -0
  122. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/runtime_loader.py +0 -0
  123. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/scheduler.py +0 -0
  124. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/schemas/__init__.py +0 -0
  125. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/schemas/claude.py +0 -0
  126. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/schemas/codex.py +0 -0
  127. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/schemas/opencode.py +0 -0
  128. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/schemas/pi.py +0 -0
  129. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/settings.py +0 -0
  130. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/__init__.py +0 -0
  131. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/api_models.py +0 -0
  132. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/api_schemas.py +0 -0
  133. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/bridge.py +0 -0
  134. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/chat_prefs.py +0 -0
  135. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/chat_sessions.py +0 -0
  136. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/client.py +0 -0
  137. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/client_api.py +0 -0
  138. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/commands/__init__.py +0 -0
  139. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/commands/agent.py +0 -0
  140. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/commands/cancel.py +0 -0
  141. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/commands/dispatch.py +0 -0
  142. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/commands/executor.py +0 -0
  143. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/commands/file_transfer.py +0 -0
  144. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/commands/handlers.py +0 -0
  145. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/commands/media.py +0 -0
  146. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/commands/menu.py +0 -0
  147. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/commands/model.py +0 -0
  148. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/commands/overrides.py +0 -0
  149. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/commands/parse.py +0 -0
  150. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/commands/plan.py +0 -0
  151. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/commands/reasoning.py +0 -0
  152. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/commands/reply.py +0 -0
  153. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/commands/topics.py +0 -0
  154. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/commands/trigger.py +0 -0
  155. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/context.py +0 -0
  156. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/engine_defaults.py +0 -0
  157. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/engine_overrides.py +0 -0
  158. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/files.py +0 -0
  159. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/loop.py +0 -0
  160. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/onboarding.py +0 -0
  161. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/outbox.py +0 -0
  162. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/parsing.py +0 -0
  163. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/render.py +0 -0
  164. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/state_store.py +0 -0
  165. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/topic_state.py +0 -0
  166. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/topics.py +0 -0
  167. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/trigger_mode.py +0 -0
  168. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/types.py +0 -0
  169. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/telegram/voice.py +0 -0
  170. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/transport.py +0 -0
  171. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/transport_runtime.py +0 -0
  172. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/transports.py +0 -0
  173. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/utils/__init__.py +0 -0
  174. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/utils/git.py +0 -0
  175. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/utils/json_state.py +0 -0
  176. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/utils/paths.py +0 -0
  177. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/utils/streams.py +0 -0
  178. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/utils/subprocess.py +0 -0
  179. {yee88-0.1.0 → yee88-0.2.0}/src/takopi/worktrees.py +0 -0
  180. {yee88-0.1.0 → yee88-0.2.0}/tests/__init__.py +0 -0
  181. {yee88-0.1.0 → yee88-0.2.0}/tests/conftest.py +0 -0
  182. {yee88-0.1.0 → yee88-0.2.0}/tests/factories.py +0 -0
  183. {yee88-0.1.0 → yee88-0.2.0}/tests/fixtures/claude_stream_json_session.jsonl +0 -0
  184. {yee88-0.1.0 → yee88-0.2.0}/tests/fixtures/codex_exec_json_all_formats.jsonl +0 -0
  185. {yee88-0.1.0 → yee88-0.2.0}/tests/fixtures/codex_exec_json_all_formats.txt +0 -0
  186. {yee88-0.1.0 → yee88-0.2.0}/tests/fixtures/opencode_run_json.jsonl +0 -0
  187. {yee88-0.1.0 → yee88-0.2.0}/tests/fixtures/opencode_stream_error.jsonl +0 -0
  188. {yee88-0.1.0 → yee88-0.2.0}/tests/fixtures/opencode_stream_success.jsonl +0 -0
  189. {yee88-0.1.0 → yee88-0.2.0}/tests/fixtures/opencode_stream_success_no_reason.jsonl +0 -0
  190. {yee88-0.1.0 → yee88-0.2.0}/tests/fixtures/pi_print_mode_events.jsonl +0 -0
  191. {yee88-0.1.0 → yee88-0.2.0}/tests/fixtures/pi_stream_error.jsonl +0 -0
  192. {yee88-0.1.0 → yee88-0.2.0}/tests/fixtures/pi_stream_success.jsonl +0 -0
  193. {yee88-0.1.0 → yee88-0.2.0}/tests/plugin_fixtures.py +0 -0
  194. {yee88-0.1.0 → yee88-0.2.0}/tests/telegram_fakes.py +0 -0
  195. {yee88-0.1.0 → yee88-0.2.0}/tests/test_api_exports.py +0 -0
  196. {yee88-0.1.0 → yee88-0.2.0}/tests/test_auto_router.py +0 -0
  197. {yee88-0.1.0 → yee88-0.2.0}/tests/test_claude_runner.py +0 -0
  198. {yee88-0.1.0 → yee88-0.2.0}/tests/test_claude_schema.py +0 -0
  199. {yee88-0.1.0 → yee88-0.2.0}/tests/test_cli_auto_router.py +0 -0
  200. {yee88-0.1.0 → yee88-0.2.0}/tests/test_cli_chat_id.py +0 -0
  201. {yee88-0.1.0 → yee88-0.2.0}/tests/test_cli_commands.py +0 -0
  202. {yee88-0.1.0 → yee88-0.2.0}/tests/test_cli_config.py +0 -0
  203. {yee88-0.1.0 → yee88-0.2.0}/tests/test_cli_doctor.py +0 -0
  204. {yee88-0.1.0 → yee88-0.2.0}/tests/test_cli_helpers.py +0 -0
  205. {yee88-0.1.0 → yee88-0.2.0}/tests/test_codex_runner_helpers.py +0 -0
  206. {yee88-0.1.0 → yee88-0.2.0}/tests/test_codex_schema.py +0 -0
  207. {yee88-0.1.0 → yee88-0.2.0}/tests/test_codex_tool_result_summary.py +0 -0
  208. {yee88-0.1.0 → yee88-0.2.0}/tests/test_command_registry.py +0 -0
  209. {yee88-0.1.0 → yee88-0.2.0}/tests/test_config_store.py +0 -0
  210. {yee88-0.1.0 → yee88-0.2.0}/tests/test_config_watch.py +0 -0
  211. {yee88-0.1.0 → yee88-0.2.0}/tests/test_engine_discovery.py +0 -0
  212. {yee88-0.1.0 → yee88-0.2.0}/tests/test_exec_bridge.py +0 -0
  213. {yee88-0.1.0 → yee88-0.2.0}/tests/test_exec_render.py +0 -0
  214. {yee88-0.1.0 → yee88-0.2.0}/tests/test_exec_runner.py +0 -0
  215. {yee88-0.1.0 → yee88-0.2.0}/tests/test_git_utils.py +0 -0
  216. {yee88-0.1.0 → yee88-0.2.0}/tests/test_lockfile.py +0 -0
  217. {yee88-0.1.0 → yee88-0.2.0}/tests/test_onboarding.py +0 -0
  218. {yee88-0.1.0 → yee88-0.2.0}/tests/test_onboarding_helpers.py +0 -0
  219. {yee88-0.1.0 → yee88-0.2.0}/tests/test_onboarding_interactive.py +0 -0
  220. {yee88-0.1.0 → yee88-0.2.0}/tests/test_opencode_runner.py +0 -0
  221. {yee88-0.1.0 → yee88-0.2.0}/tests/test_opencode_schema.py +0 -0
  222. {yee88-0.1.0 → yee88-0.2.0}/tests/test_paths.py +0 -0
  223. {yee88-0.1.0 → yee88-0.2.0}/tests/test_pi_runner.py +0 -0
  224. {yee88-0.1.0 → yee88-0.2.0}/tests/test_pi_schema.py +0 -0
  225. {yee88-0.1.0 → yee88-0.2.0}/tests/test_plugins.py +0 -0
  226. {yee88-0.1.0 → yee88-0.2.0}/tests/test_projects_config.py +0 -0
  227. {yee88-0.1.0 → yee88-0.2.0}/tests/test_rendering.py +0 -0
  228. {yee88-0.1.0 → yee88-0.2.0}/tests/test_runner_contract.py +0 -0
  229. {yee88-0.1.0 → yee88-0.2.0}/tests/test_runner_run_options.py +0 -0
  230. {yee88-0.1.0 → yee88-0.2.0}/tests/test_runner_utils.py +0 -0
  231. {yee88-0.1.0 → yee88-0.2.0}/tests/test_runtime_loader.py +0 -0
  232. {yee88-0.1.0 → yee88-0.2.0}/tests/test_settings.py +0 -0
  233. {yee88-0.1.0 → yee88-0.2.0}/tests/test_settings_contract.py +0 -0
  234. {yee88-0.1.0 → yee88-0.2.0}/tests/test_subprocess.py +0 -0
  235. {yee88-0.1.0 → yee88-0.2.0}/tests/test_telegram_agent_trigger_commands.py +0 -0
  236. {yee88-0.1.0 → yee88-0.2.0}/tests/test_telegram_bridge.py +0 -0
  237. {yee88-0.1.0 → yee88-0.2.0}/tests/test_telegram_chat_prefs.py +0 -0
  238. {yee88-0.1.0 → yee88-0.2.0}/tests/test_telegram_chat_sessions.py +0 -0
  239. {yee88-0.1.0 → yee88-0.2.0}/tests/test_telegram_client.py +0 -0
  240. {yee88-0.1.0 → yee88-0.2.0}/tests/test_telegram_client_api.py +0 -0
  241. {yee88-0.1.0 → yee88-0.2.0}/tests/test_telegram_context_helpers.py +0 -0
  242. {yee88-0.1.0 → yee88-0.2.0}/tests/test_telegram_engine_defaults.py +0 -0
  243. {yee88-0.1.0 → yee88-0.2.0}/tests/test_telegram_engine_overrides.py +0 -0
  244. {yee88-0.1.0 → yee88-0.2.0}/tests/test_telegram_file_transfer_helpers.py +0 -0
  245. {yee88-0.1.0 → yee88-0.2.0}/tests/test_telegram_files.py +0 -0
  246. {yee88-0.1.0 → yee88-0.2.0}/tests/test_telegram_incoming.py +0 -0
  247. {yee88-0.1.0 → yee88-0.2.0}/tests/test_telegram_media_command.py +0 -0
  248. {yee88-0.1.0 → yee88-0.2.0}/tests/test_telegram_polling.py +0 -0
  249. {yee88-0.1.0 → yee88-0.2.0}/tests/test_telegram_queue.py +0 -0
  250. {yee88-0.1.0 → yee88-0.2.0}/tests/test_telegram_topic_state.py +0 -0
  251. {yee88-0.1.0 → yee88-0.2.0}/tests/test_telegram_topics_command.py +0 -0
  252. {yee88-0.1.0 → yee88-0.2.0}/tests/test_telegram_topics_helpers.py +0 -0
  253. {yee88-0.1.0 → yee88-0.2.0}/tests/test_telegram_trigger_mode.py +0 -0
  254. {yee88-0.1.0 → yee88-0.2.0}/tests/test_telegram_voice.py +0 -0
  255. {yee88-0.1.0 → yee88-0.2.0}/tests/test_tool_actions.py +0 -0
  256. {yee88-0.1.0 → yee88-0.2.0}/tests/test_transport.py +0 -0
  257. {yee88-0.1.0 → yee88-0.2.0}/tests/test_transport_registry.py +0 -0
  258. {yee88-0.1.0 → yee88-0.2.0}/tests/test_transport_runtime.py +0 -0
  259. {yee88-0.1.0 → yee88-0.2.0}/tests/test_worktrees.py +0 -0
  260. {yee88-0.1.0 → yee88-0.2.0}/uv.lock +0 -0
  261. {yee88-0.1.0 → yee88-0.2.0}/zensical.toml +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: yee88
3
- Version: 0.1.0
3
+ Version: 0.2.0
4
4
  Summary: Telegram bridge for Codex, Claude Code, and other agent CLIs.
5
5
  Project-URL: Homepage, https://github.com/banteg/takopi
6
6
  Project-URL: Documentation, https://takopi.dev/
@@ -1,5 +1,11 @@
1
1
  # changelog
2
2
 
3
+ ## v0.2.0 (2026-01-30)
4
+
5
+ ### changes
6
+
7
+ - rename startup message from "takopi is ready" to "yee88 is ready"
8
+
3
9
  ## v0.21.4 (2026-01-22)
4
10
 
5
11
  ### changes
@@ -16,7 +16,7 @@ takopi
16
16
  Takopi keeps running in your terminal. In Telegram, your bot will post a startup message like:
17
17
 
18
18
  !!! takopi "Takopi"
19
- 🐙 takopi is ready
19
+ 🐙 yee88 is ready
20
20
 
21
21
  default: codex<br>
22
22
  engines: codex, claude<br>
@@ -165,7 +165,7 @@ The agent CLI isn't on your PATH. Install the CLI for the engine you're using (e
165
165
 
166
166
  **Bot doesn't respond at all**
167
167
 
168
- Check that Takopi is still running in your terminal. You should also see a startup message ("takopi is ready") from the bot in Telegram. If not, restart it.
168
+ Check that Takopi is still running in your terminal. You should also see a startup message ("yee88 is ready") from the bot in Telegram. If not, restart it.
169
169
 
170
170
  **Resume doesn't work (starts a new conversation)**
171
171
 
@@ -1,7 +1,7 @@
1
1
  [project]
2
2
  name = "yee88"
3
3
  authors = [{name = "yee.wang"}]
4
- version = "0.1.0"
4
+ version = "0.2.0"
5
5
  description = "Telegram bridge for Codex, Claude Code, and other agent CLIs."
6
6
  readme = "README.md"
7
7
  license = { file = "LICENSE" }
@@ -69,7 +69,7 @@ def _build_startup_message(
69
69
  )
70
70
  topics_label = f"enabled (scope={scope_label})"
71
71
  return (
72
- f"\N{OCTOPUS} **takopi is ready**\n\n"
72
+ f"\N{OCTOPUS} **yee88 is ready**\n\n"
73
73
  f"default: `{runtime.default_engine}` \n"
74
74
  f"engines: `{engine_list}` \n"
75
75
  f"projects: `{project_list}` \n"
@@ -49,7 +49,7 @@ def test_build_startup_message_includes_missing_engines(tmp_path: Path) -> None:
49
49
  topics=TelegramTopicsSettings(),
50
50
  )
51
51
 
52
- assert "takopi is ready" in message
52
+ assert "yee88 is ready" in message
53
53
  assert "engines: `codex (not installed: pi)`" in message
54
54
  assert "projects: `none`" in message
55
55
 
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes