gemcode 0.3.82__tar.gz → 0.3.86__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 (159) hide show
  1. gemcode-0.3.86/PKG-INFO +416 -0
  2. gemcode-0.3.86/README.md +227 -0
  3. {gemcode-0.3.82 → gemcode-0.3.86}/pyproject.toml +1 -1
  4. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/agent.py +42 -8
  5. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/callbacks.py +20 -0
  6. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/cli.py +114 -1
  7. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/config.py +3 -1
  8. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/ide_stdio.py +7 -1
  9. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/plugins/terminal_hooks_plugin.py +31 -0
  10. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/repl_commands.py +1 -0
  11. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/repl_slash.py +80 -22
  12. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/session_runtime.py +55 -0
  13. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/skills.py +51 -6
  14. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/tools/__init__.py +8 -0
  15. gemcode-0.3.86/src/gemcode/veomem_bridge.py +134 -0
  16. gemcode-0.3.86/src/gemcode.egg-info/PKG-INFO +416 -0
  17. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode.egg-info/SOURCES.txt +1 -0
  18. gemcode-0.3.86/tests/test_agent_instruction.py +22 -0
  19. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_cli_init.py +2 -0
  20. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_model_routing.py +4 -4
  21. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_tools.py +63 -0
  22. gemcode-0.3.82/PKG-INFO +0 -800
  23. gemcode-0.3.82/README.md +0 -611
  24. gemcode-0.3.82/src/gemcode.egg-info/PKG-INFO +0 -800
  25. gemcode-0.3.82/tests/test_agent_instruction.py +0 -12
  26. {gemcode-0.3.82 → gemcode-0.3.86}/LICENSE +0 -0
  27. {gemcode-0.3.82 → gemcode-0.3.86}/MANIFEST.in +0 -0
  28. {gemcode-0.3.82 → gemcode-0.3.86}/setup.cfg +0 -0
  29. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/__init__.py +0 -0
  30. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/__main__.py +0 -0
  31. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/audit.py +0 -0
  32. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/autocompact.py +0 -0
  33. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/autotune.py +0 -0
  34. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/capability_routing.py +0 -0
  35. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/checkpoints.py +0 -0
  36. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/compaction.py +0 -0
  37. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/computer_use/__init__.py +0 -0
  38. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/computer_use/browser_computer.py +0 -0
  39. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/context_budget.py +0 -0
  40. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/context_warning.py +0 -0
  41. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/credentials.py +0 -0
  42. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/curated_memory.py +0 -0
  43. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/dynamic_policy.py +0 -0
  44. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/evals/harness.py +0 -0
  45. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/hitl_session.py +0 -0
  46. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/hooks.py +0 -0
  47. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/ide_protocol.py +0 -0
  48. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/intent_classifier.py +0 -0
  49. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/interactions.py +0 -0
  50. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/invoke.py +0 -0
  51. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/kaira_daemon.py +0 -0
  52. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/learning.py +0 -0
  53. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/limits.py +0 -0
  54. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/live_audio_engine.py +0 -0
  55. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/logging_config.py +0 -0
  56. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/mcp_loader.py +0 -0
  57. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/memory/__init__.py +0 -0
  58. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/memory/embedding_memory_service.py +0 -0
  59. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/memory/file_memory_service.py +0 -0
  60. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/modality_tools.py +0 -0
  61. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/model_errors.py +0 -0
  62. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/model_routing.py +0 -0
  63. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/multimodal_input.py +0 -0
  64. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/openapi_loader.py +0 -0
  65. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/output_styles.py +0 -0
  66. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/paths.py +0 -0
  67. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/permissions.py +0 -0
  68. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/plugins/__init__.py +0 -0
  69. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/plugins/tool_recovery_plugin.py +0 -0
  70. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/policy_profile.py +0 -0
  71. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/pricing.py +0 -0
  72. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/prompt_suggestions.py +0 -0
  73. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/query/__init__.py +0 -0
  74. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/query/config.py +0 -0
  75. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/query/deps.py +0 -0
  76. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/query/engine.py +0 -0
  77. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/query/stop_hooks.py +0 -0
  78. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/query/token_budget.py +0 -0
  79. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/query/transitions.py +0 -0
  80. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/query_sanitizer.py +0 -0
  81. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/refine.py +0 -0
  82. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/review_agent.py +0 -0
  83. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/rules.py +0 -0
  84. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/session_store.py +0 -0
  85. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/slash_commands.py +0 -0
  86. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/thinking.py +0 -0
  87. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/tool_prompt_manifest.py +0 -0
  88. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/tool_registry.py +0 -0
  89. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/tool_result_store.py +0 -0
  90. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/tools/bash.py +0 -0
  91. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/tools/browser.py +0 -0
  92. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/tools/compress_memory.py +0 -0
  93. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/tools/curated_memory.py +0 -0
  94. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/tools/edit.py +0 -0
  95. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/tools/filesystem.py +0 -0
  96. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/tools/notebook.py +0 -0
  97. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/tools/notes.py +0 -0
  98. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/tools/repo_map.py +0 -0
  99. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/tools/search.py +0 -0
  100. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/tools/shell.py +0 -0
  101. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/tools/shell_gate.py +0 -0
  102. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/tools/skills.py +0 -0
  103. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/tools/subtask.py +0 -0
  104. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/tools/tasks.py +0 -0
  105. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/tools/think.py +0 -0
  106. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/tools/todo.py +0 -0
  107. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/tools/web.py +0 -0
  108. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/tools/web_search.py +0 -0
  109. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/tools_inspector.py +0 -0
  110. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/trust.py +0 -0
  111. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/tui/input_handler.py +0 -0
  112. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/tui/scrollback.py +0 -0
  113. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/tui/spinner.py +0 -0
  114. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/tui/welcome_banner.py +0 -0
  115. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/tui/welcome_rich.py +0 -0
  116. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/version.py +0 -0
  117. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/vertex.py +0 -0
  118. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/wal.py +0 -0
  119. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/web/__init__.py +0 -0
  120. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/web/sse_adapter.py +0 -0
  121. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/web/terminal_repl.py +0 -0
  122. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/web/web_sse_compat.py +0 -0
  123. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode/workspace_hints.py +0 -0
  124. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode.egg-info/dependency_links.txt +0 -0
  125. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode.egg-info/entry_points.txt +0 -0
  126. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode.egg-info/requires.txt +0 -0
  127. {gemcode-0.3.82 → gemcode-0.3.86}/src/gemcode.egg-info/top_level.txt +0 -0
  128. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_add_dir.py +0 -0
  129. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_autocompact.py +0 -0
  130. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_capability_routing.py +0 -0
  131. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_checkpoint_diff_command.py +0 -0
  132. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_compress_memory_tool.py +0 -0
  133. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_computer_use_permissions.py +0 -0
  134. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_context_budget.py +0 -0
  135. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_context_warning.py +0 -0
  136. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_credentials.py +0 -0
  137. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_eval_harness_layout.py +0 -0
  138. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_ide_stdio_attachments.py +0 -0
  139. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_interactive_permission_ask.py +0 -0
  140. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_kaira_scheduler.py +0 -0
  141. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_modality_tools.py +0 -0
  142. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_model_error_retry.py +0 -0
  143. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_model_errors.py +0 -0
  144. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_multimodal_input.py +0 -0
  145. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_output_styles_and_rules.py +0 -0
  146. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_paths.py +0 -0
  147. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_permissions.py +0 -0
  148. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_prompt_suggestions.py +0 -0
  149. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_repl_commands.py +0 -0
  150. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_repl_slash.py +0 -0
  151. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_skills.py +0 -0
  152. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_slash_commands.py +0 -0
  153. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_slash_completion_registry.py +0 -0
  154. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_thinking_config.py +0 -0
  155. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_token_budget.py +0 -0
  156. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_tool_context_circulation.py +0 -0
  157. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_tools_inspector.py +0 -0
  158. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_web_sse_adapter.py +0 -0
  159. {gemcode-0.3.82 → gemcode-0.3.86}/tests/test_workspace_hints.py +0 -0
@@ -0,0 +1,416 @@
1
+ Metadata-Version: 2.4
2
+ Name: gemcode
3
+ Version: 0.3.86
4
+ Summary: Local-first coding agent on Google Gemini + ADK
5
+ Author: GemCode Contributors
6
+ License: Apache License
7
+ Version 2.0, January 2004
8
+ http://www.apache.org/licenses/
9
+
10
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
11
+
12
+ 1. Definitions.
13
+
14
+ "License" shall mean the terms and conditions for use, reproduction,
15
+ and distribution as defined by Sections 1 through 9 of this document.
16
+
17
+ "Licensor" shall mean the copyright owner or entity authorized by
18
+ the copyright owner that is granting the License.
19
+
20
+ "Legal Entity" shall mean the union of the acting entity and all
21
+ other entities that control, are controlled by, or are under common
22
+ control with that entity. For the purposes of this definition,
23
+ "control" means (i) the power, direct or indirect, to cause the
24
+ direction or management of such entity, whether by contract or
25
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
26
+ outstanding shares, or (iii) beneficial ownership of such entity.
27
+
28
+ "You" (or "Your") shall mean an individual or Legal Entity
29
+ exercising permissions granted by this License.
30
+
31
+ "Source" form shall mean the preferred form for making modifications,
32
+ including but not limited to software source code, documentation
33
+ source, and configuration files.
34
+
35
+ "Object" form shall mean any form resulting from mechanical
36
+ transformation or translation of a Source form, including but
37
+ not limited to compiled object code, generated documentation,
38
+ and conversions to other media types.
39
+
40
+ "Work" shall mean the work of authorship, whether in Source or
41
+ Object form, made available under the License, as indicated by a
42
+ copyright notice that is included in or attached to the work
43
+ (an example is provided in the Appendix below).
44
+
45
+ "Derivative Works" shall mean any work, whether in Source or Object
46
+ form, that is based on (or derived from) the Work and for which the
47
+ editorial revisions, annotations, elaborations, or other modifications
48
+ represent, as a whole, an original work of authorship. For the purposes
49
+ of this License, Derivative Works shall not include works that remain
50
+ separable from, or merely link (or bind by name) to the interfaces of,
51
+ the Work and Derivative Works thereof.
52
+
53
+ "Contribution" shall mean any work of authorship, including
54
+ the original version of the Work and any modifications or additions
55
+ to that Work or Derivative Works thereof, that is intentionally
56
+ submitted to Licensor for inclusion in the Work by the copyright owner
57
+ or by an individual or Legal Entity authorized to submit on behalf of
58
+ the copyright owner. For the purposes of this definition, "submitted"
59
+ means any form of electronic, verbal, or written communication sent
60
+ to the Licensor or its representatives, including but not limited to
61
+ communication on electronic mailing lists, source code control systems,
62
+ and issue tracking systems that are managed by, or on behalf of, the
63
+ Licensor for the purpose of discussing and improving the Work, but
64
+ excluding communication that is conspicuously marked or otherwise
65
+ designated in writing by the copyright owner as "Not a Contribution."
66
+
67
+ "Contributor" shall mean Licensor and any individual or Legal Entity
68
+ on behalf of whom a Contribution has been received by Licensor and
69
+ subsequently incorporated within the Work.
70
+
71
+ 2. Grant of Copyright License. Subject to the terms and conditions of
72
+ this License, each Contributor hereby grants to You a perpetual,
73
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
74
+ copyright license to reproduce, prepare Derivative Works of,
75
+ publicly display, publicly perform, sublicense, and distribute the
76
+ Work and such Derivative Works in Source or Object form.
77
+
78
+ 3. Grant of Patent License. Subject to the terms and conditions of
79
+ this License, each Contributor hereby grants to You a perpetual,
80
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
81
+ (except as stated in this section) patent license to make, have made,
82
+ use, offer to sell, sell, import, and otherwise transfer the Work,
83
+ where such license applies only to those patent claims licensable
84
+ by such Contributor that are necessarily infringed by their
85
+ Contribution(s) alone or by combination of their Contribution(s)
86
+ with the Work to which such Contribution(s) was submitted. If You
87
+ institute patent litigation against any entity (including a
88
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
89
+ or a Contribution incorporated within the Work constitutes direct
90
+ or contributory patent infringement, then any patent licenses
91
+ granted to You under this License for that Work shall terminate
92
+ as of the date such litigation is filed.
93
+
94
+ 4. Redistribution. You may reproduce and distribute copies of the
95
+ Work or Derivative Works thereof in any medium, with or without
96
+ modifications, and in Source or Object form, provided that You
97
+ meet the following conditions:
98
+
99
+ (a) You must give any other recipients of the Work or
100
+ Derivative Works a copy of this License; and
101
+
102
+ (b) You must cause any modified files to carry prominent notices
103
+ stating that You changed the files; and
104
+
105
+ (c) You must retain, in the Source form of any Derivative Works
106
+ that You distribute, all copyright, patent, trademark, and
107
+ attribution notices from the Source form of the Work,
108
+ excluding those notices that do not pertain to any part of
109
+ the Derivative Works; and
110
+
111
+ (d) If the Work includes a "NOTICE" text file as part of its
112
+ distribution, then any Derivative Works that You distribute must
113
+ include a readable copy of the attribution notices contained
114
+ within such NOTICE file, excluding those notices that do not
115
+ pertain to any part of the Derivative Works, in at least one
116
+ of the following places: within a NOTICE text file distributed
117
+ as part of the Derivative Works; within the Source form or
118
+ documentation, if provided along with the Derivative Works; or,
119
+ within a display generated by the Derivative Works, if and
120
+ wherever such third-party notices normally appear. The contents
121
+ of the NOTICE file are for informational purposes only and
122
+ do not modify the License. You may add Your own attribution
123
+ notices within Derivative Works that You distribute, alongside
124
+ or as an addendum to the NOTICE text from the Work, provided
125
+ that such additional attribution notices cannot be construed
126
+ as modifying the License.
127
+
128
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
129
+ any Contribution intentionally submitted for inclusion in the Work
130
+ by You to the Licensor shall be under the terms and conditions of
131
+ this License, without any additional terms or conditions.
132
+
133
+ 6. Trademarks. This License does not grant permission to use the trade
134
+ names, trademarks, service marks, or product names of the Licensor.
135
+
136
+ 7. Disclaimer of Warranty. Unless required by applicable law or
137
+ agreed to in writing, Licensor provides the Work (and each
138
+ Contributor provides its Contributions) on an "AS IS" BASIS,
139
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
140
+
141
+ 8. Limitation of Liability. In no event and under no legal theory,
142
+ whether in tort (including negligence), contract, or otherwise,
143
+ unless required by applicable law, shall any Contributor be liable
144
+ to You for damages, including any direct, indirect, special,
145
+ incidental, or consequential damages arising in any way out of the
146
+ use of the Work.
147
+
148
+ 9. Accepting Warranty or Additional Liability. While redistributing
149
+ the Work or Derivative Works thereof, You may choose to offer,
150
+ and charge a fee for, acceptance of support, warranty, indemnity,
151
+ or other liability obligations and/or rights consistent with this
152
+ License. However, in accepting such obligations, You may act only
153
+ on Your own behalf and on Your sole responsibility.
154
+
155
+ END OF TERMS AND CONDITIONS
156
+
157
+
158
+ Project-URL: Homepage, https://github.com/spiderdev27/GemCode
159
+ Project-URL: Repository, https://github.com/spiderdev27/GemCode
160
+ Project-URL: Issues, https://github.com/spiderdev27/GemCode/issues
161
+ Keywords: ai,agent,coding,gemini,adk,cli,tui
162
+ Classifier: Development Status :: 3 - Alpha
163
+ Classifier: Environment :: Console
164
+ Classifier: Intended Audience :: Developers
165
+ Classifier: License :: OSI Approved :: Apache Software License
166
+ Classifier: Operating System :: OS Independent
167
+ Classifier: Programming Language :: Python :: 3
168
+ Classifier: Programming Language :: Python :: 3 :: Only
169
+ Classifier: Programming Language :: Python :: 3.11
170
+ Classifier: Programming Language :: Python :: 3.12
171
+ Classifier: Programming Language :: Python :: 3.13
172
+ Classifier: Topic :: Software Development
173
+ Classifier: Topic :: Software Development :: Libraries
174
+ Classifier: Topic :: Terminals
175
+ Requires-Python: >=3.11
176
+ Description-Content-Type: text/markdown
177
+ License-File: LICENSE
178
+ Requires-Dist: google-adk>=1.0.0
179
+ Requires-Dist: google-genai>=1.0.0
180
+ Requires-Dist: python-dotenv>=1.0.0
181
+ Requires-Dist: rich>=13.0.0
182
+ Requires-Dist: prompt_toolkit>=3.0.0
183
+ Provides-Extra: dev
184
+ Requires-Dist: pytest>=8.0.0; extra == "dev"
185
+ Requires-Dist: pytest-asyncio>=0.24.0; extra == "dev"
186
+ Provides-Extra: mcp
187
+ Requires-Dist: mcp>=1.0.0; extra == "mcp"
188
+ Dynamic: license-file
189
+
190
+ # GemCode User Manual
191
+
192
+ 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.
193
+
194
+ ## What GemCode is
195
+ 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:
196
+ - a configuration model
197
+ - a runtime runner
198
+ - a root language-model agent
199
+ - a configurable tool inventory
200
+ - project-local state under `.gemcode/`
201
+
202
+ GemCode is designed for repository-native work rather than copy-paste chat workflows.
203
+
204
+ ## Runtime modes
205
+
206
+ | Mode | Purpose |
207
+ |---|---|
208
+ | One-shot CLI | Single prompt/response runs |
209
+ | REPL | Stateful terminal interaction |
210
+ | TUI | Scrollback terminal UI over the REPL runtime |
211
+ | IDE stdio | Editor integration over JSONL stdin/stdout |
212
+ | Kaira | Priority-queue scheduler for background jobs |
213
+ | Live audio | Microphone-driven Gemini Live sessions |
214
+
215
+ ## Recommended reading order
216
+
217
+ ### 1. Setup and first use
218
+ - [`../docs/install.md`](../docs/install.md)
219
+
220
+ ### 2. Interactive use
221
+ - [`../docs/cli-and-repl.md`](../docs/cli-and-repl.md)
222
+
223
+ ### 3. Configuration and local assets
224
+ - [`../docs/configuration.md`](../docs/configuration.md)
225
+
226
+ ### 4. Tooling and safety model
227
+ - [`../docs/tools-and-permissions.md`](../docs/tools-and-permissions.md)
228
+
229
+ ### 5. Optional capability bundles
230
+ - [`../docs/capabilities.md`](../docs/capabilities.md)
231
+
232
+ ### 6. Integrations
233
+ - [`../docs/integrations.md`](../docs/integrations.md)
234
+ - [`../docs/web-ui-contract.md`](../docs/web-ui-contract.md)
235
+
236
+ ### 7. Operations and release
237
+ - [`../docs/operations.md`](../docs/operations.md)
238
+
239
+ ### 8. `.gemcode/` state reference
240
+ - [`../docs/reference-gemcode-state.md`](../docs/reference-gemcode-state.md)
241
+
242
+ ### 9. Architecture deep dive
243
+ - [`../docs/architecture.md`](../docs/architecture.md)
244
+
245
+ ## Quickstart
246
+
247
+ ### Install
248
+ ```bash
249
+ cd gemcode
250
+ python3 -m venv .venv
251
+ source .venv/bin/activate
252
+ python3 -m pip install -e ".[dev]"
253
+ ```
254
+
255
+ ### Set your API key
256
+ ```bash
257
+ export GOOGLE_API_KEY="your-key"
258
+ ```
259
+
260
+ ### Start GemCode against a project
261
+ ```bash
262
+ gemcode -C /path/to/project
263
+ ```
264
+
265
+ ### One-shot run
266
+ ```bash
267
+ gemcode -C /path/to/project "Explain this repository"
268
+ ```
269
+
270
+ ### Mutating run
271
+ ```bash
272
+ gemcode -C /path/to/project --yes "Fix the failing tests"
273
+ ```
274
+
275
+ ## Essential concepts
276
+
277
+ ### Project root
278
+ Every GemCode run is anchored to a project root. This determines:
279
+ - what files are visible
280
+ - where `.gemcode/` state is stored
281
+ - what instruction files are loaded
282
+ - which repo-local assets are active
283
+
284
+ ### `.gemcode/`
285
+ GemCode stores project-local state under `.gemcode/`, including:
286
+ - sessions
287
+ - logs
288
+ - artifacts
289
+ - memory
290
+ - skills
291
+ - rules
292
+ - output styles
293
+ - hooks
294
+ - integration config
295
+
296
+ Reference:
297
+ - [`../docs/reference-gemcode-state.md`](../docs/reference-gemcode-state.md)
298
+
299
+ ### Project instruction files
300
+ GemCode supports project instruction files loaded by the agent layer. The live code treats `gemcode.md` as the primary project instruction file and supports `GEMINI.md` as a compatibility path.
301
+
302
+ Reference:
303
+ - [`../docs/configuration.md`](../docs/configuration.md)
304
+
305
+ ### GemSkills
306
+ GemSkills are reusable prompt playbooks stored under:
307
+ - `.gemcode/skills/<name>/SKILL.md`
308
+ - `~/.gemcode/skills/<name>/SKILL.md`
309
+
310
+ They support:
311
+ - creation
312
+ - session loading
313
+ - one-shot invocation
314
+ - iterative editing
315
+
316
+ ### Permissions
317
+ GemCode combines:
318
+ - workspace trust
319
+ - permission mode
320
+ - allow/deny settings
321
+ - blanket approval flags
322
+ - interactive approval prompts
323
+
324
+ Reference:
325
+ - [`../docs/tools-and-permissions.md`](../docs/tools-and-permissions.md)
326
+
327
+ ## Common commands
328
+
329
+ ### Inspect models
330
+ ```bash
331
+ gemcode models
332
+ ```
333
+
334
+ ### Start the REPL
335
+ ```bash
336
+ gemcode -C .
337
+ ```
338
+
339
+ ### Attach a file to a one-shot turn
340
+ ```bash
341
+ gemcode -C . --attach ./report.pdf "Summarize this"
342
+ ```
343
+
344
+ ### Run the scheduler
345
+ ```bash
346
+ gemcode kaira -C .
347
+ ```
348
+
349
+ ### Start the IDE bridge
350
+ ```bash
351
+ gemcode ide --stdio
352
+ ```
353
+
354
+ ### Run live audio
355
+ ```bash
356
+ gemcode live-audio -C .
357
+ ```
358
+
359
+ ## REPL command highlights
360
+
361
+ | Command | Purpose |
362
+ |---|---|
363
+ | `/help` | Command summary |
364
+ | `/status` | Model, capabilities, context, and runtime telemetry |
365
+ | `/context` | Context pressure and prompt budget telemetry |
366
+ | `/cost` | Token and cost estimate summary |
367
+ | `/attach` | Queue file attachments for the next turn |
368
+ | `/trust` | Manage workspace trust |
369
+ | `/init` | Generate project instructions |
370
+ | `/skills` | List skills |
371
+ | `/gemskill` | Load a skill into the session prompt |
372
+ | `/style` | Set session output style |
373
+ | `/rules` | Inspect active rules |
374
+ | `/diff` | Show current diff/checkpoint diff |
375
+ | `/rewind` | Restore checkpoints |
376
+ | `/review` | Run a review workflow |
377
+ | `/eval` | Run evaluation gates |
378
+ | `/kaira` | Show scheduler usage help |
379
+
380
+ Detailed behavior:
381
+ - [`../docs/cli-and-repl.md`](../docs/cli-and-repl.md)
382
+
383
+ ## Capability overview
384
+
385
+ | Capability | What it adds |
386
+ |---|---|
387
+ | Deep research | research-focused tool routing and optional dedicated model path |
388
+ | Embeddings | semantic search and optional embedding-backed memory |
389
+ | Memory | retrieval-oriented persistent memory |
390
+ | Browser/computer use | Playwright-backed browser automation and inspection |
391
+ | Live audio | Gemini Live microphone sessions |
392
+
393
+ Detailed behavior:
394
+ - [`../docs/capabilities.md`](../docs/capabilities.md)
395
+
396
+ ## Integrations overview
397
+
398
+ | Integration | Entry point |
399
+ |---|---|
400
+ | IDE bridge | `gemcode ide --stdio` |
401
+ | Web/SSE | documented in `docs/web-ui-contract.md` |
402
+ | MCP | `.gemcode/mcp.json` |
403
+ | OpenAPI | `.gemcode/openapi/` |
404
+
405
+ Detailed behavior:
406
+ - [`../docs/integrations.md`](../docs/integrations.md)
407
+
408
+ ## Release and maintenance
409
+ Package version lives in:
410
+ - `gemcode/pyproject.toml`
411
+
412
+ Release operations, troubleshooting, and PyPI workflow are documented in:
413
+ - [`../docs/operations.md`](../docs/operations.md)
414
+
415
+ ## Documentation policy
416
+ 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.
@@ -0,0 +1,227 @@
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 coding agent built around Google Gemini and the Google Agent Development Kit (ADK). It operates against a chosen project root and combines:
7
+ - a configuration model
8
+ - a runtime runner
9
+ - a root language-model agent
10
+ - a configurable tool inventory
11
+ - project-local state under `.gemcode/`
12
+
13
+ GemCode is designed for repository-native work rather than copy-paste chat workflows.
14
+
15
+ ## Runtime modes
16
+
17
+ | Mode | Purpose |
18
+ |---|---|
19
+ | One-shot CLI | Single prompt/response runs |
20
+ | REPL | Stateful terminal interaction |
21
+ | TUI | Scrollback terminal UI over the REPL runtime |
22
+ | IDE stdio | Editor integration over JSONL stdin/stdout |
23
+ | Kaira | Priority-queue scheduler for background jobs |
24
+ | Live audio | Microphone-driven Gemini Live sessions |
25
+
26
+ ## Recommended reading order
27
+
28
+ ### 1. Setup and first use
29
+ - [`../docs/install.md`](../docs/install.md)
30
+
31
+ ### 2. Interactive use
32
+ - [`../docs/cli-and-repl.md`](../docs/cli-and-repl.md)
33
+
34
+ ### 3. Configuration and local assets
35
+ - [`../docs/configuration.md`](../docs/configuration.md)
36
+
37
+ ### 4. Tooling and safety model
38
+ - [`../docs/tools-and-permissions.md`](../docs/tools-and-permissions.md)
39
+
40
+ ### 5. Optional capability bundles
41
+ - [`../docs/capabilities.md`](../docs/capabilities.md)
42
+
43
+ ### 6. Integrations
44
+ - [`../docs/integrations.md`](../docs/integrations.md)
45
+ - [`../docs/web-ui-contract.md`](../docs/web-ui-contract.md)
46
+
47
+ ### 7. Operations and release
48
+ - [`../docs/operations.md`](../docs/operations.md)
49
+
50
+ ### 8. `.gemcode/` state reference
51
+ - [`../docs/reference-gemcode-state.md`](../docs/reference-gemcode-state.md)
52
+
53
+ ### 9. Architecture deep dive
54
+ - [`../docs/architecture.md`](../docs/architecture.md)
55
+
56
+ ## Quickstart
57
+
58
+ ### Install
59
+ ```bash
60
+ cd gemcode
61
+ python3 -m venv .venv
62
+ source .venv/bin/activate
63
+ python3 -m pip install -e ".[dev]"
64
+ ```
65
+
66
+ ### Set your API key
67
+ ```bash
68
+ export GOOGLE_API_KEY="your-key"
69
+ ```
70
+
71
+ ### Start GemCode against a project
72
+ ```bash
73
+ gemcode -C /path/to/project
74
+ ```
75
+
76
+ ### One-shot run
77
+ ```bash
78
+ gemcode -C /path/to/project "Explain this repository"
79
+ ```
80
+
81
+ ### Mutating run
82
+ ```bash
83
+ gemcode -C /path/to/project --yes "Fix the failing tests"
84
+ ```
85
+
86
+ ## Essential concepts
87
+
88
+ ### Project root
89
+ Every GemCode run is anchored to a project root. This determines:
90
+ - what files are visible
91
+ - where `.gemcode/` state is stored
92
+ - what instruction files are loaded
93
+ - which repo-local assets are active
94
+
95
+ ### `.gemcode/`
96
+ GemCode stores project-local state under `.gemcode/`, including:
97
+ - sessions
98
+ - logs
99
+ - artifacts
100
+ - memory
101
+ - skills
102
+ - rules
103
+ - output styles
104
+ - hooks
105
+ - integration config
106
+
107
+ Reference:
108
+ - [`../docs/reference-gemcode-state.md`](../docs/reference-gemcode-state.md)
109
+
110
+ ### Project instruction files
111
+ GemCode supports project instruction files loaded by the agent layer. The live code treats `gemcode.md` as the primary project instruction file and supports `GEMINI.md` as a compatibility path.
112
+
113
+ Reference:
114
+ - [`../docs/configuration.md`](../docs/configuration.md)
115
+
116
+ ### GemSkills
117
+ GemSkills are reusable prompt playbooks stored under:
118
+ - `.gemcode/skills/<name>/SKILL.md`
119
+ - `~/.gemcode/skills/<name>/SKILL.md`
120
+
121
+ They support:
122
+ - creation
123
+ - session loading
124
+ - one-shot invocation
125
+ - iterative editing
126
+
127
+ ### Permissions
128
+ GemCode combines:
129
+ - workspace trust
130
+ - permission mode
131
+ - allow/deny settings
132
+ - blanket approval flags
133
+ - interactive approval prompts
134
+
135
+ Reference:
136
+ - [`../docs/tools-and-permissions.md`](../docs/tools-and-permissions.md)
137
+
138
+ ## Common commands
139
+
140
+ ### Inspect models
141
+ ```bash
142
+ gemcode models
143
+ ```
144
+
145
+ ### Start the REPL
146
+ ```bash
147
+ gemcode -C .
148
+ ```
149
+
150
+ ### Attach a file to a one-shot turn
151
+ ```bash
152
+ gemcode -C . --attach ./report.pdf "Summarize this"
153
+ ```
154
+
155
+ ### Run the scheduler
156
+ ```bash
157
+ gemcode kaira -C .
158
+ ```
159
+
160
+ ### Start the IDE bridge
161
+ ```bash
162
+ gemcode ide --stdio
163
+ ```
164
+
165
+ ### Run live audio
166
+ ```bash
167
+ gemcode live-audio -C .
168
+ ```
169
+
170
+ ## REPL command highlights
171
+
172
+ | Command | Purpose |
173
+ |---|---|
174
+ | `/help` | Command summary |
175
+ | `/status` | Model, capabilities, context, and runtime telemetry |
176
+ | `/context` | Context pressure and prompt budget telemetry |
177
+ | `/cost` | Token and cost estimate summary |
178
+ | `/attach` | Queue file attachments for the next turn |
179
+ | `/trust` | Manage workspace trust |
180
+ | `/init` | Generate project instructions |
181
+ | `/skills` | List skills |
182
+ | `/gemskill` | Load a skill into the session prompt |
183
+ | `/style` | Set session output style |
184
+ | `/rules` | Inspect active rules |
185
+ | `/diff` | Show current diff/checkpoint diff |
186
+ | `/rewind` | Restore checkpoints |
187
+ | `/review` | Run a review workflow |
188
+ | `/eval` | Run evaluation gates |
189
+ | `/kaira` | Show scheduler usage help |
190
+
191
+ Detailed behavior:
192
+ - [`../docs/cli-and-repl.md`](../docs/cli-and-repl.md)
193
+
194
+ ## Capability overview
195
+
196
+ | Capability | What it adds |
197
+ |---|---|
198
+ | Deep research | research-focused tool routing and optional dedicated model path |
199
+ | Embeddings | semantic search and optional embedding-backed memory |
200
+ | Memory | retrieval-oriented persistent memory |
201
+ | Browser/computer use | Playwright-backed browser automation and inspection |
202
+ | Live audio | Gemini Live microphone sessions |
203
+
204
+ Detailed behavior:
205
+ - [`../docs/capabilities.md`](../docs/capabilities.md)
206
+
207
+ ## Integrations overview
208
+
209
+ | Integration | Entry point |
210
+ |---|---|
211
+ | IDE bridge | `gemcode ide --stdio` |
212
+ | Web/SSE | documented in `docs/web-ui-contract.md` |
213
+ | MCP | `.gemcode/mcp.json` |
214
+ | OpenAPI | `.gemcode/openapi/` |
215
+
216
+ Detailed behavior:
217
+ - [`../docs/integrations.md`](../docs/integrations.md)
218
+
219
+ ## Release and maintenance
220
+ Package version lives in:
221
+ - `gemcode/pyproject.toml`
222
+
223
+ Release operations, troubleshooting, and PyPI workflow are documented in:
224
+ - [`../docs/operations.md`](../docs/operations.md)
225
+
226
+ ## Documentation policy
227
+ 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.82"
7
+ version = "0.3.86"
8
8
  description = "Local-first coding agent on Google Gemini + ADK"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.11"