gemcode 0.3.121__tar.gz → 0.4.1__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 (185) hide show
  1. {gemcode-0.3.121/src/gemcode.egg-info → gemcode-0.4.1}/PKG-INFO +127 -43
  2. gemcode-0.4.1/README.md +356 -0
  3. {gemcode-0.3.121 → gemcode-0.4.1}/pyproject.toml +2 -2
  4. gemcode-0.4.1/src/gemcode/a2a_bridge.py +258 -0
  5. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/agent.py +85 -32
  6. gemcode-0.4.1/src/gemcode/agent_habits.py +413 -0
  7. gemcode-0.4.1/src/gemcode/agent_intelligence.py +650 -0
  8. gemcode-0.4.1/src/gemcode/agent_mesh.py +643 -0
  9. gemcode-0.4.1/src/gemcode/agent_triggers.py +332 -0
  10. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/callbacks.py +34 -0
  11. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/checkpoints.py +19 -1
  12. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/cli.py +1 -1
  13. gemcode-0.4.1/src/gemcode/codebase_awareness.py +368 -0
  14. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/config.py +5 -2
  15. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/curated_memory.py +1 -1
  16. gemcode-0.4.1/src/gemcode/delegation_learning.py +245 -0
  17. gemcode-0.4.1/src/gemcode/event_bus.py +201 -0
  18. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/fleet_reports.py +3 -1
  19. gemcode-0.4.1/src/gemcode/invoke.py +366 -0
  20. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/kaira_client.py +4 -2
  21. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/kaira_daemon.py +21 -7
  22. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/kaira_ipc.py +67 -0
  23. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/learning.py +1 -1
  24. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/model_routing.py +19 -0
  25. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/plugins/terminal_hooks_plugin.py +1 -1
  26. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/repl_slash.py +36 -13
  27. gemcode-0.4.1/src/gemcode/self_healing.py +303 -0
  28. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/session_runtime.py +1 -1
  29. gemcode-0.4.1/src/gemcode/tool_synthesis.py +234 -0
  30. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tools/__init__.py +66 -0
  31. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tools/automations_tools.py +3 -3
  32. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tools/curated_memory.py +1 -1
  33. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tools/edit.py +1 -1
  34. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tools/org_tools.py +113 -104
  35. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tools/subtask.py +21 -10
  36. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tui/scrollback.py +6 -3
  37. {gemcode-0.3.121 → gemcode-0.4.1/src/gemcode.egg-info}/PKG-INFO +127 -43
  38. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode.egg-info/SOURCES.txt +14 -0
  39. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode.egg-info/requires.txt +1 -1
  40. gemcode-0.4.1/tests/test_agent_habits.py +113 -0
  41. gemcode-0.4.1/tests/test_agent_mesh.py +96 -0
  42. gemcode-0.4.1/tests/test_event_bus.py +151 -0
  43. gemcode-0.4.1/tests/test_kaira_ipc_paths.py +39 -0
  44. gemcode-0.3.121/README.md +0 -272
  45. gemcode-0.3.121/src/gemcode/invoke.py +0 -547
  46. {gemcode-0.3.121 → gemcode-0.4.1}/LICENSE +0 -0
  47. {gemcode-0.3.121 → gemcode-0.4.1}/MANIFEST.in +0 -0
  48. {gemcode-0.3.121 → gemcode-0.4.1}/setup.cfg +0 -0
  49. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/__init__.py +0 -0
  50. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/__main__.py +0 -0
  51. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/audit.py +0 -0
  52. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/autocompact.py +0 -0
  53. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/automations.py +0 -0
  54. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/autotune.py +0 -0
  55. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/capability_routing.py +0 -0
  56. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/compaction.py +0 -0
  57. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/computer_use/__init__.py +0 -0
  58. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/computer_use/browser_computer.py +0 -0
  59. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/context_budget.py +0 -0
  60. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/context_warning.py +0 -0
  61. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/credentials.py +0 -0
  62. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/dynamic_policy.py +0 -0
  63. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/evals/harness.py +0 -0
  64. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/hitl_session.py +0 -0
  65. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/hooks.py +0 -0
  66. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/ide_protocol.py +0 -0
  67. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/ide_stdio.py +0 -0
  68. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/intent_classifier.py +0 -0
  69. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/interactions.py +0 -0
  70. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/kaira_job_store.py +0 -0
  71. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/limits.py +0 -0
  72. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/live_audio_engine.py +0 -0
  73. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/logging_config.py +0 -0
  74. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/mcp_loader.py +0 -0
  75. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/memory/__init__.py +0 -0
  76. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/memory/embedding_memory_service.py +0 -0
  77. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/memory/file_memory_service.py +0 -0
  78. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/modality_tools.py +0 -0
  79. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/model_errors.py +0 -0
  80. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/multimodal_input.py +0 -0
  81. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/openapi_loader.py +0 -0
  82. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/org.py +0 -0
  83. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/output_styles.py +0 -0
  84. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/paths.py +0 -0
  85. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/permissions.py +0 -0
  86. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/plugins/__init__.py +0 -0
  87. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/plugins/tool_recovery_plugin.py +0 -0
  88. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/policy_profile.py +0 -0
  89. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/pricing.py +0 -0
  90. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/prompt_suggestions.py +0 -0
  91. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/query/__init__.py +0 -0
  92. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/query/config.py +0 -0
  93. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/query/deps.py +0 -0
  94. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/query/engine.py +0 -0
  95. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/query/stop_hooks.py +0 -0
  96. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/query/token_budget.py +0 -0
  97. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/query/transitions.py +0 -0
  98. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/query_sanitizer.py +0 -0
  99. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/refine.py +0 -0
  100. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/repl_commands.py +0 -0
  101. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/review_agent.py +0 -0
  102. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/rules.py +0 -0
  103. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/session_store.py +0 -0
  104. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/session_summariser.py +0 -0
  105. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/skills.py +0 -0
  106. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/slash_commands.py +0 -0
  107. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/thinking.py +0 -0
  108. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tool_prompt_manifest.py +0 -0
  109. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tool_registry.py +0 -0
  110. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tool_result_store.py +0 -0
  111. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tools/bash.py +0 -0
  112. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tools/browser.py +0 -0
  113. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tools/compress_memory.py +0 -0
  114. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tools/filesystem.py +0 -0
  115. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tools/notebook.py +0 -0
  116. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tools/notes.py +0 -0
  117. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tools/repo_map.py +0 -0
  118. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tools/search.py +0 -0
  119. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tools/shell.py +0 -0
  120. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tools/shell_gate.py +0 -0
  121. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tools/skills.py +0 -0
  122. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tools/tasks.py +0 -0
  123. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tools/think.py +0 -0
  124. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tools/todo.py +0 -0
  125. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tools/user_choice.py +0 -0
  126. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tools/veomem_tools.py +0 -0
  127. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tools/web.py +0 -0
  128. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tools/web_search.py +0 -0
  129. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tools_inspector.py +0 -0
  130. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/trust.py +0 -0
  131. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tui/input_handler.py +0 -0
  132. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tui/spinner.py +0 -0
  133. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tui/welcome_banner.py +0 -0
  134. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/tui/welcome_rich.py +0 -0
  135. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/veomem_bridge.py +0 -0
  136. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/version.py +0 -0
  137. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/vertex.py +0 -0
  138. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/wal.py +0 -0
  139. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/web/__init__.py +0 -0
  140. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/web/sse_adapter.py +0 -0
  141. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/web/terminal_repl.py +0 -0
  142. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/web/web_sse_compat.py +0 -0
  143. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode/workspace_hints.py +0 -0
  144. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode.egg-info/dependency_links.txt +0 -0
  145. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode.egg-info/entry_points.txt +0 -0
  146. {gemcode-0.3.121 → gemcode-0.4.1}/src/gemcode.egg-info/top_level.txt +0 -0
  147. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_add_dir.py +0 -0
  148. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_agent_instruction.py +0 -0
  149. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_autocompact.py +0 -0
  150. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_automations.py +0 -0
  151. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_capability_routing.py +0 -0
  152. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_checkpoint_diff_command.py +0 -0
  153. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_cli_init.py +0 -0
  154. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_compress_memory_tool.py +0 -0
  155. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_computer_use_permissions.py +0 -0
  156. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_context_budget.py +0 -0
  157. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_context_warning.py +0 -0
  158. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_credentials.py +0 -0
  159. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_eval_harness_layout.py +0 -0
  160. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_fleet_reports.py +0 -0
  161. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_ide_stdio_attachments.py +0 -0
  162. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_interactive_permission_ask.py +0 -0
  163. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_kaira_scheduler.py +0 -0
  164. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_modality_tools.py +0 -0
  165. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_model_error_retry.py +0 -0
  166. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_model_errors.py +0 -0
  167. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_model_routing.py +0 -0
  168. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_multimodal_input.py +0 -0
  169. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_output_styles_and_rules.py +0 -0
  170. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_paths.py +0 -0
  171. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_permissions.py +0 -0
  172. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_prompt_suggestions.py +0 -0
  173. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_repl_commands.py +0 -0
  174. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_repl_slash.py +0 -0
  175. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_session_runtime_cache.py +0 -0
  176. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_skills.py +0 -0
  177. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_slash_commands.py +0 -0
  178. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_slash_completion_registry.py +0 -0
  179. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_thinking_config.py +0 -0
  180. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_token_budget.py +0 -0
  181. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_tool_context_circulation.py +0 -0
  182. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_tools.py +0 -0
  183. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_tools_inspector.py +0 -0
  184. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_web_sse_adapter.py +0 -0
  185. {gemcode-0.3.121 → gemcode-0.4.1}/tests/test_workspace_hints.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: gemcode
3
- Version: 0.3.121
3
+ Version: 0.4.1
4
4
  Summary: Local-first coding agent on Google Gemini + ADK
5
5
  Author: GemCode Contributors
6
6
  License: Apache License
@@ -175,7 +175,7 @@ Classifier: Topic :: Terminals
175
175
  Requires-Python: >=3.11
176
176
  Description-Content-Type: text/markdown
177
177
  License-File: LICENSE
178
- Requires-Dist: google-adk>=1.0.0
178
+ Requires-Dist: google-adk[a2a]>=1.0.0
179
179
  Requires-Dist: google-genai>=1.0.0
180
180
  Requires-Dist: python-dotenv>=1.0.0
181
181
  Requires-Dist: rich>=13.0.0
@@ -195,14 +195,18 @@ Dynamic: license-file
195
195
  This document is the primary user-facing manual for GemCode. It explains the product at a high level and points to the subsystem-specific documentation pages that provide production-grade depth.
196
196
 
197
197
  ## What GemCode is
198
- GemCode is a local-first coding agent built around Google Gemini and the Google Agent Development Kit (ADK). It operates against a chosen project root and combines:
199
- - a configuration model
200
- - a runtime runner
201
- - a root language-model agent
202
- - a configurable tool inventory
203
- - project-local state under `.gemcode/`
198
+ GemCode is a local-first, self-evolving coding agent built on Google Gemini and the Agent Development Kit (ADK). It operates against a chosen project root and provides:
204
199
 
205
- GemCode is designed for repository-native work rather than copy-paste chat workflows.
200
+ - **Autonomous multi-agent orchestration** agents delegate, verify, and fix each other's work
201
+ - **Self-healing code** — changes are auto-verified; failures are auto-fixed
202
+ - **Self-evolving tools** — the agent creates new reusable tools from repeated patterns
203
+ - **Progressive learning** — gets smarter with every session (memory, skills, project map)
204
+ - **Scheduled habits** — agents wake up on cron/interval to run tests, audits, checks
205
+ - **Cross-machine agents** — expose/consume agents via Google A2A protocol
206
+ - **58 built-in tools** — filesystem, shell, web, search, memory, orchestration, synthesis
207
+ - **Full ADK integration** — native sub-agents, transfer_to_agent, output_key, workflow agents
208
+
209
+ All state lives under `.gemcode/` in the project root. No external services required beyond a Gemini API key.
206
210
 
207
211
  ## Runtime modes
208
212
 
@@ -212,8 +216,10 @@ GemCode is designed for repository-native work rather than copy-paste chat workf
212
216
  | REPL | Stateful terminal interaction |
213
217
  | TUI | GemCode terminal UI (scrollback-style; `tui/scrollback.py`) |
214
218
  | IDE stdio | Editor integration over JSONL stdin/stdout |
215
- | Kaira | Priority-queue scheduler for background jobs |
216
- | Live audio (future scope) | Planned: microphone-driven Gemini Live sessions (currently experimental/unreliable) |
219
+ | Agent Mesh | In-process multi-agent orchestration (automatic) |
220
+ | Kaira daemon | Optional always-on background scheduler |
221
+ | A2A server | Cross-machine agent communication via Google A2A protocol |
222
+ | Live audio (experimental) | Microphone-driven Gemini Live sessions |
217
223
 
218
224
  ## Recommended reading order
219
225
 
@@ -329,14 +335,20 @@ Reference:
329
335
 
330
336
  ### Super mode (fully autonomous)
331
337
 
332
- Use when you want GemCode to run without GemCode’s own confirmation prompts (mutations, shell, ADK confirmation handoffs, AFC stdin prompt, attachment gate, auto-trust on CLI, and non-interactive `get_user_choice` = first option).
338
+ Use when you want GemCode to run with all powers unlocked and zero friction. In super mode:
339
+ - All capabilities auto-enable (memory, web search, agents, habits, triggers)
340
+ - Default org members auto-create (kaira + verifier)
341
+ - Habits auto-generate based on project type
342
+ - Auto-verification runs after risky changes
343
+ - No confirmation prompts for any operation
333
344
 
334
345
  - **CLI:** `gemcode -C . --super "your task"`
335
346
  - **Env:** `GEMCODE_SUPER_MODE=1`
336
- - **REPL/TUI:** `/super` (use `/super off` to clear the flag only)
337
- - **Kaira:** `gemcode kaira -C . --super`
347
+ - **REPL/TUI:** `/super` (use `/super off` to clear)
348
+
349
+ In normal mode, GemCode asks on first run: "Enable autonomous mode? [Y/n]"
338
350
 
339
- Details and safety notes: [`../docs/tools-and-permissions.md`](../docs/tools-and-permissions.md#super-mode-fully-autonomous).
351
+ Details: [`../docs/orchestration.md`](../docs/orchestration.md).
340
352
 
341
353
  ## Common commands
342
354
 
@@ -360,34 +372,30 @@ gemcode -C . --attach ./report.pdf "Summarize this"
360
372
  gemcode kaira -C .
361
373
  ```
362
374
 
363
- ### Orchestration (Kaira + org delegation)
364
-
365
- Background completions are visible on the runtime **bus** and also accumulated in **`.gemcode/fleet_reports.jsonl`** for the next manager turn (optional auto-continue). See `../docs/orchestration.md`.
366
-
367
- Docs:
368
- - `../docs/orchestration.md`
369
-
370
- In one terminal:
375
+ ### Orchestration (Agent Mesh + Multi-Agent)
371
376
 
372
- ```bash
373
- gemcode kaira -C .
374
- ```
377
+ GemCode includes a built-in multi-agent orchestration system that works automatically — no separate daemon required.
375
378
 
376
- In another terminal:
379
+ **Key features:**
380
+ - **Native ADK sub-agents** — org members are real ADK sub-agents with `transfer_to_agent` routing
381
+ - **Agent Mesh** — async background execution with full GemCode sessions per agent
382
+ - **Event Bus** — agents communicate via pub/sub (no Unix sockets needed)
383
+ - **Self-Healing** — closed loop: change → verify → fix → verify → done
384
+ - **Self-Triggers** — agents auto-activate on events (verification, failure recovery)
385
+ - **Tool Synthesis** — agent creates new reusable tools from repeated patterns
386
+ - **Delegation Learning** — remembers which agents succeed at which tasks
387
+ - **A2A Bridge** — expose/consume agents across machines via Google A2A protocol
377
388
 
378
- ```bash
379
- gemcode -C .
389
+ Quick example in the REPL:
390
+ ```text
391
+ > Analyze the auth module. Delegate security review to the verifier.
380
392
  ```
393
+ The LLM calls `transfer_to_agent(agent_name='verifier')` → ADK routes natively → verifier runs → result saved to session state.
381
394
 
382
- Then in the REPL/TUI:
395
+ For background work: `org_delegate("kaira", "run tests")` → mesh runs kaira as a full GemCode session → result flows back via fleet reports.
383
396
 
384
- ```text
385
- /org tree
386
- /org hire verifier "QA / test planner" subagent gemcode "Find risks, propose tests, review plans."
387
- /org assign verifier "Review the plan and propose tests"
388
- /kaira jobs
389
- /kaira follow <job_id_prefix>
390
- ```
397
+ Docs:
398
+ - [`../docs/orchestration.md`](../docs/orchestration.md)
391
399
 
392
400
  ### Start the IDE bridge
393
401
  ```bash
@@ -420,11 +428,75 @@ Status note:
420
428
  | `/rules` | Inspect active rules |
421
429
  | `/diff` | Show current diff/checkpoint diff |
422
430
  | `/rewind` | Restore checkpoints |
423
- | `/review` | Run a review workflow |
431
+ | `/review` | Run a parallel code review pipeline |
424
432
  | `/eval` | Run evaluation gates |
425
433
  | `/kaira` | Show scheduler usage help |
426
434
  | `/super` | Super mode: auto-approve tools, no GemCode HITL · `/super off` |
427
435
 
436
+ ## Orchestration commands
437
+
438
+ | Command | Purpose |
439
+ |---|---|
440
+ | `/agent list` | Show all org members |
441
+ | `/agent tree` | Show org hierarchy |
442
+ | `/agent create` | Create a new agent member |
443
+ | `/agent assign <member> <task>` | Delegate work to a member |
444
+ | `/agent improve <member> <lessons>` | Improve a member's skill |
445
+
446
+ ## Intelligence features (automatic)
447
+
448
+ These work without configuration. In super mode, everything is enabled silently. In normal mode, GemCode asks once on first run.
449
+
450
+ | Feature | How it works |
451
+ |---|---|
452
+ | **Codebase awareness** | Builds a persistent understanding of the project from every tool call — file structure, imports/exports, recent changes, learned facts. The agent starts each turn already knowing the project. |
453
+ | **Self-healing** | After file changes, auto-runs tests/lint. If they fail, auto-fixes (up to 2 attempts). Closed loop: change → verify → fix → verify → done. |
454
+ | **Tool synthesis** | When the agent repeats multi-step operations, it can create a reusable tool (bash/python script) stored in `.gemcode/synthesized_tools/`. |
455
+ | **Self-improving skills** | When a delegation succeeds, the member's skill file gets a "Learned pattern" appended. Future invocations benefit from past successes. |
456
+ | **Proactive memory** | After exploring 5+ files or running 3+ commands, key discoveries are auto-saved to curated memory. Future sessions start with this knowledge. |
457
+ | **Impact analysis** | When a file changes, GemCode knows which other files are affected (via import tracking + learned correlations). Self-healing runs only relevant tests. |
458
+ | **Auto-verification** | After 3+ file writes, the verifier agent auto-checks for syntax errors, broken imports, and logic bugs. |
459
+ | **Delegation suggestions** | `suggest_delegate(task)` recommends the best agent based on historical success patterns. |
460
+ | **Capability auto-enable** | If a project consistently uses web search or memory, those capabilities auto-enable in future sessions. |
461
+
462
+ ## Tool Synthesis (self-evolving)
463
+
464
+ The agent can create new reusable tools when it detects repeated patterns:
465
+
466
+ ```text
467
+ # Create a tool
468
+ synthesize_tool("run-tests", "Run pytest with coverage", "pytest --cov=src -q")
469
+ synthesize_tool("deploy-staging", "Deploy to staging", "git push origin main && ssh staging 'cd app && git pull'")
470
+
471
+ # Use it later
472
+ run_synthesized_tool("run-tests")
473
+ run_synthesized_tool("deploy-staging")
474
+
475
+ # List all synthesized tools
476
+ list_synthesized_tools()
477
+ ```
478
+
479
+ Tools persist in `.gemcode/synthesized_tools/` across sessions.
480
+
481
+ ## Agent Habits (scheduled tasks)
482
+
483
+ Agents can run recurring tasks on a schedule — no daemon needed, runs inside the main GemCode process.
484
+
485
+ ```text
486
+ # From the agent (tools):
487
+ habits_add("test-watch", "kaira", "Run pytest -q and report", every_minutes=30)
488
+ habits_add("nightly-audit", "verifier", "Full security review", daily_at="02:00")
489
+ habits_add("hourly-status", "self", "Summarize recent changes", cron="0 * * * *")
490
+
491
+ # Management:
492
+ habits_list()
493
+ habits_pause("test-watch")
494
+ habits_resume("test-watch")
495
+ habits_remove("test-watch")
496
+ ```
497
+
498
+ In super mode, GemCode auto-creates habits based on project type (test-watch for Python, lint-watch for Node).
499
+
428
500
  Detailed behavior:
429
501
  - [`../docs/cli-and-repl.md`](../docs/cli-and-repl.md)
430
502
 
@@ -432,11 +504,23 @@ Detailed behavior:
432
504
 
433
505
  | Capability | What it adds |
434
506
  |---|---|
435
- | Deep research | research-focused tool routing and optional dedicated model path |
436
- | Embeddings | semantic search and optional embedding-backed memory |
437
- | Memory | retrieval-oriented persistent memory |
438
- | Browser/computer use | Playwright-backed browser automation and inspection |
439
- | Live audio | Gemini Live microphone sessions |
507
+ | **Codebase Awareness** | Persistent understanding of the project structure graph, change journal, insight cache. Compounds over time, zero extra cost |
508
+ | **Agent Mesh** | In-process multi-agent orchestration each agent is a full GemCode session with own workspace, memory, and persistent history |
509
+ | **Self-Healing** | Closed loop: change → verify → fix → verify → done. Code repairs itself automatically |
510
+ | **Tool Synthesis** | Agent creates new reusable tools at runtime from repeated patterns |
511
+ | **Agent Habits** | Scheduled recurring tasks (cron/interval/daily) — agents wake up and do work autonomously |
512
+ | **Self-Triggers** | Agents auto-activate on events (verification after changes, failure recovery) |
513
+ | **Self-Improving Skills** | Skills evolve — successful patterns are appended automatically |
514
+ | **Delegation Learning** | Remembers which agents succeed at which tasks, suggests optimal routing |
515
+ | **Proactive Memory** | Auto-saves important discoveries to curated memory without being asked |
516
+ | **A2A Bridge** | Cross-machine agent communication via Google A2A protocol |
517
+ | **Event Bus** | In-memory pub/sub for agent-to-agent communication |
518
+ | **Deep research** | Research-focused tool routing and optional dedicated model path |
519
+ | **Embeddings** | Semantic search and optional embedding-backed memory |
520
+ | **Memory** | Retrieval-oriented persistent memory across sessions |
521
+ | **Browser/computer use** | Playwright-backed browser automation and inspection |
522
+ | **Checkpoints** | File mutations are reversible — undo any agent edit |
523
+ | **Live audio** | Gemini Live microphone sessions (experimental) |
440
524
 
441
525
  Detailed behavior:
442
526
  - [`../docs/capabilities.md`](../docs/capabilities.md)
@@ -0,0 +1,356 @@
1
+ # GemCode User Manual
2
+
3
+ This document is the primary user-facing manual for GemCode. It explains the product at a high level and points to the subsystem-specific documentation pages that provide production-grade depth.
4
+
5
+ ## What GemCode is
6
+ GemCode is a local-first, self-evolving coding agent built on Google Gemini and the Agent Development Kit (ADK). It operates against a chosen project root and provides:
7
+
8
+ - **Autonomous multi-agent orchestration** — agents delegate, verify, and fix each other's work
9
+ - **Self-healing code** — changes are auto-verified; failures are auto-fixed
10
+ - **Self-evolving tools** — the agent creates new reusable tools from repeated patterns
11
+ - **Progressive learning** — gets smarter with every session (memory, skills, project map)
12
+ - **Scheduled habits** — agents wake up on cron/interval to run tests, audits, checks
13
+ - **Cross-machine agents** — expose/consume agents via Google A2A protocol
14
+ - **58 built-in tools** — filesystem, shell, web, search, memory, orchestration, synthesis
15
+ - **Full ADK integration** — native sub-agents, transfer_to_agent, output_key, workflow agents
16
+
17
+ All state lives under `.gemcode/` in the project root. No external services required beyond a Gemini API key.
18
+
19
+ ## Runtime modes
20
+
21
+ | Mode | Purpose |
22
+ |---|---|
23
+ | One-shot CLI | Single prompt/response runs |
24
+ | REPL | Stateful terminal interaction |
25
+ | TUI | GemCode terminal UI (scrollback-style; `tui/scrollback.py`) |
26
+ | IDE stdio | Editor integration over JSONL stdin/stdout |
27
+ | Agent Mesh | In-process multi-agent orchestration (automatic) |
28
+ | Kaira daemon | Optional always-on background scheduler |
29
+ | A2A server | Cross-machine agent communication via Google A2A protocol |
30
+ | Live audio (experimental) | Microphone-driven Gemini Live sessions |
31
+
32
+ ## Recommended reading order
33
+
34
+ ### 1. Setup and first use
35
+ - [`../docs/install.md`](../docs/install.md)
36
+
37
+ ### 2. Interactive use
38
+ - [`../docs/cli-and-repl.md`](../docs/cli-and-repl.md)
39
+
40
+ ### 3. Configuration and local assets
41
+ - [`../docs/configuration.md`](../docs/configuration.md)
42
+
43
+ ### 4. Tooling and safety model
44
+ - [`../docs/tools-and-permissions.md`](../docs/tools-and-permissions.md)
45
+
46
+ ### 5. Optional capability bundles
47
+ - [`../docs/capabilities.md`](../docs/capabilities.md)
48
+
49
+ ### 6. Integrations
50
+ - [`../docs/integrations.md`](../docs/integrations.md)
51
+ - [`../docs/web-ui-contract.md`](../docs/web-ui-contract.md)
52
+
53
+ ### 7. Operations and release
54
+ - [`../docs/operations.md`](../docs/operations.md)
55
+
56
+ ### 8. `.gemcode/` state reference
57
+ - [`../docs/reference-gemcode-state.md`](../docs/reference-gemcode-state.md)
58
+
59
+ ### 9. Architecture deep dive
60
+ - [`../docs/architecture.md`](../docs/architecture.md)
61
+
62
+ ## Quickstart
63
+
64
+ ### Install
65
+ ```bash
66
+ cd gemcode
67
+ python3 -m venv .venv
68
+ source .venv/bin/activate
69
+ python3 -m pip install -e ".[dev]"
70
+ ```
71
+
72
+ ### Set your API key
73
+ ```bash
74
+ export GOOGLE_API_KEY="your-key"
75
+ ```
76
+
77
+ ### Start GemCode against a project
78
+ ```bash
79
+ gemcode -C /path/to/project
80
+ ```
81
+
82
+ ### One-shot run
83
+ ```bash
84
+ gemcode -C /path/to/project "Explain this repository"
85
+ ```
86
+
87
+ ### Mutating run
88
+ ```bash
89
+ gemcode -C /path/to/project --yes "Fix the failing tests"
90
+ ```
91
+
92
+ ## Essential concepts
93
+
94
+ ### Project root
95
+ Every GemCode run is anchored to a project root. This determines:
96
+ - what files are visible
97
+ - where `.gemcode/` state is stored
98
+ - what instruction files are loaded
99
+ - which repo-local assets are active
100
+
101
+ ### `.gemcode/`
102
+ GemCode stores project-local state under `.gemcode/`, including:
103
+ - sessions
104
+ - logs
105
+ - artifacts
106
+ - memory
107
+ - skills
108
+ - rules
109
+ - output styles
110
+ - hooks
111
+ - integration config
112
+
113
+ Reference:
114
+ - [`../docs/reference-gemcode-state.md`](../docs/reference-gemcode-state.md)
115
+
116
+ ### Project instruction files
117
+ GemCode supports project instruction files loaded by the agent layer. The live code treats `gemcode.md` as the primary project instruction file and also supports legacy instruction filenames for compatibility.
118
+
119
+ Reference:
120
+ - [`../docs/configuration.md`](../docs/configuration.md)
121
+
122
+ ### GemSkills
123
+ GemSkills are reusable prompt playbooks stored under:
124
+ - `.gemcode/skills/<name>/SKILL.md`
125
+ - `~/.gemcode/skills/<name>/SKILL.md`
126
+
127
+ They support:
128
+ - creation
129
+ - session loading
130
+ - one-shot invocation
131
+ - iterative editing
132
+
133
+ ### Permissions
134
+ GemCode combines:
135
+ - workspace trust
136
+ - permission mode
137
+ - allow/deny settings
138
+ - blanket approval flags
139
+ - interactive approval prompts
140
+
141
+ Reference:
142
+ - [`../docs/tools-and-permissions.md`](../docs/tools-and-permissions.md)
143
+
144
+ ### Super mode (fully autonomous)
145
+
146
+ Use when you want GemCode to run with all powers unlocked and zero friction. In super mode:
147
+ - All capabilities auto-enable (memory, web search, agents, habits, triggers)
148
+ - Default org members auto-create (kaira + verifier)
149
+ - Habits auto-generate based on project type
150
+ - Auto-verification runs after risky changes
151
+ - No confirmation prompts for any operation
152
+
153
+ - **CLI:** `gemcode -C . --super "your task"`
154
+ - **Env:** `GEMCODE_SUPER_MODE=1`
155
+ - **REPL/TUI:** `/super` (use `/super off` to clear)
156
+
157
+ In normal mode, GemCode asks on first run: "Enable autonomous mode? [Y/n]"
158
+
159
+ Details: [`../docs/orchestration.md`](../docs/orchestration.md).
160
+
161
+ ## Common commands
162
+
163
+ ### Inspect models
164
+ ```bash
165
+ gemcode models
166
+ ```
167
+
168
+ ### Start the REPL
169
+ ```bash
170
+ gemcode -C .
171
+ ```
172
+
173
+ ### Attach a file to a one-shot turn
174
+ ```bash
175
+ gemcode -C . --attach ./report.pdf "Summarize this"
176
+ ```
177
+
178
+ ### Run the scheduler
179
+ ```bash
180
+ gemcode kaira -C .
181
+ ```
182
+
183
+ ### Orchestration (Agent Mesh + Multi-Agent)
184
+
185
+ GemCode includes a built-in multi-agent orchestration system that works automatically — no separate daemon required.
186
+
187
+ **Key features:**
188
+ - **Native ADK sub-agents** — org members are real ADK sub-agents with `transfer_to_agent` routing
189
+ - **Agent Mesh** — async background execution with full GemCode sessions per agent
190
+ - **Event Bus** — agents communicate via pub/sub (no Unix sockets needed)
191
+ - **Self-Healing** — closed loop: change → verify → fix → verify → done
192
+ - **Self-Triggers** — agents auto-activate on events (verification, failure recovery)
193
+ - **Tool Synthesis** — agent creates new reusable tools from repeated patterns
194
+ - **Delegation Learning** — remembers which agents succeed at which tasks
195
+ - **A2A Bridge** — expose/consume agents across machines via Google A2A protocol
196
+
197
+ Quick example in the REPL:
198
+ ```text
199
+ > Analyze the auth module. Delegate security review to the verifier.
200
+ ```
201
+ The LLM calls `transfer_to_agent(agent_name='verifier')` → ADK routes natively → verifier runs → result saved to session state.
202
+
203
+ For background work: `org_delegate("kaira", "run tests")` → mesh runs kaira as a full GemCode session → result flows back via fleet reports.
204
+
205
+ Docs:
206
+ - [`../docs/orchestration.md`](../docs/orchestration.md)
207
+
208
+ ### Start the IDE bridge
209
+ ```bash
210
+ gemcode ide --stdio
211
+ ```
212
+
213
+ ### Run live audio
214
+ ```bash
215
+ gemcode live-audio -C .
216
+ ```
217
+
218
+ Status note:
219
+ - `live-audio` is currently **experimental** and may fail due to upstream Gemini Live availability/reliability (for example transient `1011` internal errors).
220
+ - Treat this as **future scope** for production workflows.
221
+
222
+ ## REPL command highlights
223
+
224
+ | Command | Purpose |
225
+ |---|---|
226
+ | `/help` | Command summary |
227
+ | `/status` | Model, capabilities, context, and runtime telemetry |
228
+ | `/context` | Context pressure and prompt budget telemetry |
229
+ | `/cost` | Token and cost estimate summary |
230
+ | `/attach` | Queue file attachments for the next turn |
231
+ | `/trust` | Manage workspace trust |
232
+ | `/init` | Generate project instructions |
233
+ | `/skills` | List skills |
234
+ | `/gemskill` | Load a skill into the session prompt |
235
+ | `/style` | Set session output style |
236
+ | `/rules` | Inspect active rules |
237
+ | `/diff` | Show current diff/checkpoint diff |
238
+ | `/rewind` | Restore checkpoints |
239
+ | `/review` | Run a parallel code review pipeline |
240
+ | `/eval` | Run evaluation gates |
241
+ | `/kaira` | Show scheduler usage help |
242
+ | `/super` | Super mode: auto-approve tools, no GemCode HITL · `/super off` |
243
+
244
+ ## Orchestration commands
245
+
246
+ | Command | Purpose |
247
+ |---|---|
248
+ | `/agent list` | Show all org members |
249
+ | `/agent tree` | Show org hierarchy |
250
+ | `/agent create` | Create a new agent member |
251
+ | `/agent assign <member> <task>` | Delegate work to a member |
252
+ | `/agent improve <member> <lessons>` | Improve a member's skill |
253
+
254
+ ## Intelligence features (automatic)
255
+
256
+ These work without configuration. In super mode, everything is enabled silently. In normal mode, GemCode asks once on first run.
257
+
258
+ | Feature | How it works |
259
+ |---|---|
260
+ | **Codebase awareness** | Builds a persistent understanding of the project from every tool call — file structure, imports/exports, recent changes, learned facts. The agent starts each turn already knowing the project. |
261
+ | **Self-healing** | After file changes, auto-runs tests/lint. If they fail, auto-fixes (up to 2 attempts). Closed loop: change → verify → fix → verify → done. |
262
+ | **Tool synthesis** | When the agent repeats multi-step operations, it can create a reusable tool (bash/python script) stored in `.gemcode/synthesized_tools/`. |
263
+ | **Self-improving skills** | When a delegation succeeds, the member's skill file gets a "Learned pattern" appended. Future invocations benefit from past successes. |
264
+ | **Proactive memory** | After exploring 5+ files or running 3+ commands, key discoveries are auto-saved to curated memory. Future sessions start with this knowledge. |
265
+ | **Impact analysis** | When a file changes, GemCode knows which other files are affected (via import tracking + learned correlations). Self-healing runs only relevant tests. |
266
+ | **Auto-verification** | After 3+ file writes, the verifier agent auto-checks for syntax errors, broken imports, and logic bugs. |
267
+ | **Delegation suggestions** | `suggest_delegate(task)` recommends the best agent based on historical success patterns. |
268
+ | **Capability auto-enable** | If a project consistently uses web search or memory, those capabilities auto-enable in future sessions. |
269
+
270
+ ## Tool Synthesis (self-evolving)
271
+
272
+ The agent can create new reusable tools when it detects repeated patterns:
273
+
274
+ ```text
275
+ # Create a tool
276
+ synthesize_tool("run-tests", "Run pytest with coverage", "pytest --cov=src -q")
277
+ synthesize_tool("deploy-staging", "Deploy to staging", "git push origin main && ssh staging 'cd app && git pull'")
278
+
279
+ # Use it later
280
+ run_synthesized_tool("run-tests")
281
+ run_synthesized_tool("deploy-staging")
282
+
283
+ # List all synthesized tools
284
+ list_synthesized_tools()
285
+ ```
286
+
287
+ Tools persist in `.gemcode/synthesized_tools/` across sessions.
288
+
289
+ ## Agent Habits (scheduled tasks)
290
+
291
+ Agents can run recurring tasks on a schedule — no daemon needed, runs inside the main GemCode process.
292
+
293
+ ```text
294
+ # From the agent (tools):
295
+ habits_add("test-watch", "kaira", "Run pytest -q and report", every_minutes=30)
296
+ habits_add("nightly-audit", "verifier", "Full security review", daily_at="02:00")
297
+ habits_add("hourly-status", "self", "Summarize recent changes", cron="0 * * * *")
298
+
299
+ # Management:
300
+ habits_list()
301
+ habits_pause("test-watch")
302
+ habits_resume("test-watch")
303
+ habits_remove("test-watch")
304
+ ```
305
+
306
+ In super mode, GemCode auto-creates habits based on project type (test-watch for Python, lint-watch for Node).
307
+
308
+ Detailed behavior:
309
+ - [`../docs/cli-and-repl.md`](../docs/cli-and-repl.md)
310
+
311
+ ## Capability overview
312
+
313
+ | Capability | What it adds |
314
+ |---|---|
315
+ | **Codebase Awareness** | Persistent understanding of the project — structure graph, change journal, insight cache. Compounds over time, zero extra cost |
316
+ | **Agent Mesh** | In-process multi-agent orchestration — each agent is a full GemCode session with own workspace, memory, and persistent history |
317
+ | **Self-Healing** | Closed loop: change → verify → fix → verify → done. Code repairs itself automatically |
318
+ | **Tool Synthesis** | Agent creates new reusable tools at runtime from repeated patterns |
319
+ | **Agent Habits** | Scheduled recurring tasks (cron/interval/daily) — agents wake up and do work autonomously |
320
+ | **Self-Triggers** | Agents auto-activate on events (verification after changes, failure recovery) |
321
+ | **Self-Improving Skills** | Skills evolve — successful patterns are appended automatically |
322
+ | **Delegation Learning** | Remembers which agents succeed at which tasks, suggests optimal routing |
323
+ | **Proactive Memory** | Auto-saves important discoveries to curated memory without being asked |
324
+ | **A2A Bridge** | Cross-machine agent communication via Google A2A protocol |
325
+ | **Event Bus** | In-memory pub/sub for agent-to-agent communication |
326
+ | **Deep research** | Research-focused tool routing and optional dedicated model path |
327
+ | **Embeddings** | Semantic search and optional embedding-backed memory |
328
+ | **Memory** | Retrieval-oriented persistent memory across sessions |
329
+ | **Browser/computer use** | Playwright-backed browser automation and inspection |
330
+ | **Checkpoints** | File mutations are reversible — undo any agent edit |
331
+ | **Live audio** | Gemini Live microphone sessions (experimental) |
332
+
333
+ Detailed behavior:
334
+ - [`../docs/capabilities.md`](../docs/capabilities.md)
335
+
336
+ ## Integrations overview
337
+
338
+ | Integration | Entry point |
339
+ |---|---|
340
+ | IDE bridge | `gemcode ide --stdio` |
341
+ | Web/SSE | documented in `docs/web-ui-contract.md` |
342
+ | MCP | `.gemcode/mcp.json` |
343
+ | OpenAPI | `.gemcode/openapi/` |
344
+
345
+ Detailed behavior:
346
+ - [`../docs/integrations.md`](../docs/integrations.md)
347
+
348
+ ## Release and maintenance
349
+ Package version lives in:
350
+ - `gemcode/pyproject.toml`
351
+
352
+ Release operations, troubleshooting, and PyPI workflow are documented in:
353
+ - [`../docs/operations.md`](../docs/operations.md)
354
+
355
+ ## Documentation policy
356
+ This manual is intentionally concise. The detailed production documentation lives under `docs/` and is organized by subsystem and operator concern so it can stay accurate as GemCode evolves.
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "gemcode"
7
- version = "0.3.121"
7
+ version = "0.4.1"
8
8
  description = "Local-first coding agent on Google Gemini + ADK"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.11"
@@ -27,7 +27,7 @@ classifiers = [
27
27
  "Topic :: Terminals",
28
28
  ]
29
29
  dependencies = [
30
- "google-adk>=1.0.0",
30
+ "google-adk[a2a]>=1.0.0",
31
31
  "google-genai>=1.0.0",
32
32
  "python-dotenv>=1.0.0",
33
33
  "rich>=13.0.0",