siada-cli 0.0.1__py3-none-any.whl

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 (215) hide show
  1. agent_config.yaml +34 -0
  2. siada/__init__.py +13 -0
  3. siada/agent_hub/__init__.py +10 -0
  4. siada/agent_hub/coder/bug_fix_agent.py +398 -0
  5. siada/agent_hub/coder/code_gen_agent.py +235 -0
  6. siada/agent_hub/coder/fe_gen_agent.py +37 -0
  7. siada/agent_hub/coder/issue_review_agent.py +68 -0
  8. siada/agent_hub/coder/prompt/__init__.py +0 -0
  9. siada/agent_hub/coder/prompt/base/__init__.py +0 -0
  10. siada/agent_hub/coder/prompt/base/capabilities.py +18 -0
  11. siada/agent_hub/coder/prompt/base/non_interactive.py +14 -0
  12. siada/agent_hub/coder/prompt/base/prompt_builder.py +33 -0
  13. siada/agent_hub/coder/prompt/base/rules.py +40 -0
  14. siada/agent_hub/coder/prompt/base/tool_use.py +14 -0
  15. siada/agent_hub/coder/prompt/bug_prompt/bug_fix_prompt.py +51 -0
  16. siada/agent_hub/coder/prompt/bug_prompt/rules.py +53 -0
  17. siada/agent_hub/coder/prompt/code_gen_prompt.py +45 -0
  18. siada/agent_hub/coder/prompt/fe_gen_prompt.py +45 -0
  19. siada/agent_hub/coder/prompt/issue_review_prompt.py +121 -0
  20. siada/agent_hub/coder/tracing/__init__.py +22 -0
  21. siada/agent_hub/coder/tracing/logger_tracing_processor.py +458 -0
  22. siada/agent_hub/hooks/__init__.py +0 -0
  23. siada/agent_hub/hooks/io_hooks.py +30 -0
  24. siada/agent_hub/siada_agent.py +214 -0
  25. siada/config/__init__.py +0 -0
  26. siada/config/config_loader.py +67 -0
  27. siada/entrypoint/__init__.py +3 -0
  28. siada/entrypoint/args_parser/__init__.py +0 -0
  29. siada/entrypoint/args_parser/args.py +195 -0
  30. siada/entrypoint/interaction/__init__.py +0 -0
  31. siada/entrypoint/interaction/base_turn.py +107 -0
  32. siada/entrypoint/interaction/config.py +30 -0
  33. siada/entrypoint/interaction/controller.py +122 -0
  34. siada/entrypoint/interaction/nointeractive_controller.py +27 -0
  35. siada/entrypoint/interaction/turn/interface.py +116 -0
  36. siada/entrypoint/interaction/turn/models.py +34 -0
  37. siada/entrypoint/interaction/turn/run_turn.py +641 -0
  38. siada/entrypoint/interaction/turn_factory.py +35 -0
  39. siada/entrypoint/interaction/turn_models.py +28 -0
  40. siada/entrypoint/siadahub.py +413 -0
  41. siada/foundation/__init__.py +0 -0
  42. siada/foundation/code_agent_context.py +48 -0
  43. siada/foundation/config.py +59 -0
  44. siada/foundation/constants.py +2 -0
  45. siada/foundation/context.py +76 -0
  46. siada/foundation/logging.py +341 -0
  47. siada/foundation/tools/__init__.py +0 -0
  48. siada/foundation/tools/get_git_diff.py +105 -0
  49. siada/io/__init__.py +0 -0
  50. siada/io/banner.py +148 -0
  51. siada/io/color_settings.py +207 -0
  52. siada/io/color_utils.py +16 -0
  53. siada/io/components/__init__.py +0 -0
  54. siada/io/components/mdstream.py +204 -0
  55. siada/io/console_printer.py +68 -0
  56. siada/io/io.py +661 -0
  57. siada/io/key_bindings.py +129 -0
  58. siada/io/notification_command.py +40 -0
  59. siada/io/test_banner.py +64 -0
  60. siada/models/__init__.py +0 -0
  61. siada/models/agent.py +47 -0
  62. siada/models/coder/__init__.py +0 -0
  63. siada/models/converter.py +27 -0
  64. siada/models/model_base_config.py +121 -0
  65. siada/models/model_run_config.py +153 -0
  66. siada/provider/__init__.py +0 -0
  67. siada/provider/client_factory.py +112 -0
  68. siada/provider/llm_client.py +11 -0
  69. siada/provider/openrouter/__init__.py +0 -0
  70. siada/provider/openrouter/coverter.py +17 -0
  71. siada/provider/openrouter/openroute_provider.py +33 -0
  72. siada/provider/provider_factory.py +53 -0
  73. siada/queries/tree-sitter-language-pack/README.md +7 -0
  74. siada/queries/tree-sitter-language-pack/arduino-tags.scm +5 -0
  75. siada/queries/tree-sitter-language-pack/c-tags.scm +9 -0
  76. siada/queries/tree-sitter-language-pack/chatito-tags.scm +16 -0
  77. siada/queries/tree-sitter-language-pack/commonlisp-tags.scm +122 -0
  78. siada/queries/tree-sitter-language-pack/cpp-tags.scm +15 -0
  79. siada/queries/tree-sitter-language-pack/csharp-tags.scm +26 -0
  80. siada/queries/tree-sitter-language-pack/d-tags.scm +26 -0
  81. siada/queries/tree-sitter-language-pack/dart-tags.scm +92 -0
  82. siada/queries/tree-sitter-language-pack/elisp-tags.scm +5 -0
  83. siada/queries/tree-sitter-language-pack/elixir-tags.scm +54 -0
  84. siada/queries/tree-sitter-language-pack/elm-tags.scm +19 -0
  85. siada/queries/tree-sitter-language-pack/gleam-tags.scm +41 -0
  86. siada/queries/tree-sitter-language-pack/go-tags.scm +42 -0
  87. siada/queries/tree-sitter-language-pack/java-tags.scm +20 -0
  88. siada/queries/tree-sitter-language-pack/javascript-tags.scm +88 -0
  89. siada/queries/tree-sitter-language-pack/lua-tags.scm +34 -0
  90. siada/queries/tree-sitter-language-pack/ocaml-tags.scm +115 -0
  91. siada/queries/tree-sitter-language-pack/ocaml_interface-tags.scm +98 -0
  92. siada/queries/tree-sitter-language-pack/pony-tags.scm +39 -0
  93. siada/queries/tree-sitter-language-pack/properties-tags.scm +5 -0
  94. siada/queries/tree-sitter-language-pack/python-tags.scm +14 -0
  95. siada/queries/tree-sitter-language-pack/r-tags.scm +21 -0
  96. siada/queries/tree-sitter-language-pack/racket-tags.scm +12 -0
  97. siada/queries/tree-sitter-language-pack/ruby-tags.scm +64 -0
  98. siada/queries/tree-sitter-language-pack/rust-tags.scm +60 -0
  99. siada/queries/tree-sitter-language-pack/solidity-tags.scm +43 -0
  100. siada/queries/tree-sitter-language-pack/swift-tags.scm +51 -0
  101. siada/queries/tree-sitter-language-pack/udev-tags.scm +20 -0
  102. siada/queries/tree-sitter-languages/README.md +23 -0
  103. siada/queries/tree-sitter-languages/c-tags.scm +9 -0
  104. siada/queries/tree-sitter-languages/c_sharp-tags.scm +46 -0
  105. siada/queries/tree-sitter-languages/cpp-tags.scm +15 -0
  106. siada/queries/tree-sitter-languages/dart-tags.scm +91 -0
  107. siada/queries/tree-sitter-languages/elisp-tags.scm +8 -0
  108. siada/queries/tree-sitter-languages/elixir-tags.scm +54 -0
  109. siada/queries/tree-sitter-languages/elm-tags.scm +19 -0
  110. siada/queries/tree-sitter-languages/go-tags.scm +30 -0
  111. siada/queries/tree-sitter-languages/hcl-tags.scm +77 -0
  112. siada/queries/tree-sitter-languages/java-tags.scm +20 -0
  113. siada/queries/tree-sitter-languages/javascript-tags.scm +88 -0
  114. siada/queries/tree-sitter-languages/kotlin-tags.scm +27 -0
  115. siada/queries/tree-sitter-languages/ocaml-tags.scm +115 -0
  116. siada/queries/tree-sitter-languages/ocaml_interface-tags.scm +98 -0
  117. siada/queries/tree-sitter-languages/php-tags.scm +26 -0
  118. siada/queries/tree-sitter-languages/python-tags.scm +12 -0
  119. siada/queries/tree-sitter-languages/ql-tags.scm +26 -0
  120. siada/queries/tree-sitter-languages/ruby-tags.scm +64 -0
  121. siada/queries/tree-sitter-languages/rust-tags.scm +60 -0
  122. siada/queries/tree-sitter-languages/scala-tags.scm +65 -0
  123. siada/queries/tree-sitter-languages/typescript-tags.scm +41 -0
  124. siada/services/__init__.py +30 -0
  125. siada/services/at_file_recommendation_design_document.md +1213 -0
  126. siada/services/code_context_manager.py +136 -0
  127. siada/services/enhanced_fix_result_check.py +546 -0
  128. siada/services/execution_trace_collector.py +207 -0
  129. siada/services/file_recommendation/__init__.py +136 -0
  130. siada/services/file_recommendation/core/__init__.py +17 -0
  131. siada/services/file_recommendation/core/completion_engine.py +351 -0
  132. siada/services/file_recommendation/core/config.py +62 -0
  133. siada/services/file_recommendation/core/file_discovery.py +353 -0
  134. siada/services/file_recommendation/core/suggestion.py +110 -0
  135. siada/services/file_recommendation/utils/__init__.py +22 -0
  136. siada/services/file_recommendation/utils/path_utils.py +138 -0
  137. siada/services/file_recommendation/utils/text_utils.py +253 -0
  138. siada/services/fix_result_check.py +377 -0
  139. siada/services/handle_at_command/README.md +247 -0
  140. siada/services/handle_at_command/__init__.py +115 -0
  141. siada/services/handle_at_command/exceptions.py +46 -0
  142. siada/services/handle_at_command/models.py +92 -0
  143. siada/services/handle_at_command/parser.py +189 -0
  144. siada/services/handle_at_command/processor.py +321 -0
  145. siada/services/handle_at_command/resolver.py +318 -0
  146. siada/services/handle_at_command/utils.py +345 -0
  147. siada/services/model_info_service.py +103 -0
  148. siada/services/siada_runner.py +170 -0
  149. siada/session/__init__.py +29 -0
  150. siada/session/session_manager.py +66 -0
  151. siada/session/session_models.py +43 -0
  152. siada/support/__init__.py +0 -0
  153. siada/support/completer.py +204 -0
  154. siada/support/editor.py +146 -0
  155. siada/support/envprocessor.py +54 -0
  156. siada/support/repo.py +51 -0
  157. siada/support/slash_commands.py +410 -0
  158. siada/support/spinner.py +320 -0
  159. siada/tools/__init__.py +0 -0
  160. siada/tools/ast/README.md +345 -0
  161. siada/tools/ast/ast_tool.py +341 -0
  162. siada/tools/ast/models.py +11 -0
  163. siada/tools/coder/__init__.py +0 -0
  164. siada/tools/coder/ask_followup_question.py +70 -0
  165. siada/tools/coder/cmd_runner.py +132 -0
  166. siada/tools/coder/file_operator.py +284 -0
  167. siada/tools/coder/file_search/README.md +223 -0
  168. siada/tools/coder/file_search/__init__.py +10 -0
  169. siada/tools/coder/file_search/bin/rg-linux-arm64 +0 -0
  170. siada/tools/coder/file_search/bin/rg-linux-x64 +0 -0
  171. siada/tools/coder/file_search/bin/rg-macos-arm64 +0 -0
  172. siada/tools/coder/file_search/bin/rg-macos-x64 +0 -0
  173. siada/tools/coder/file_search/bin/rg.exe +0 -0
  174. siada/tools/coder/file_search/search.py +437 -0
  175. siada/tools/coder/file_search/setup_package.py +150 -0
  176. siada/tools/coder/file_search/test_search.py +142 -0
  177. siada/tools/coder/files.py +147 -0
  178. siada/tools/coder/fix_attempt_completion.py +58 -0
  179. siada/tools/coder/issue_review_completion.py +29 -0
  180. siada/tools/coder/observation/__init__.py +0 -0
  181. siada/tools/coder/observation/error.py +22 -0
  182. siada/tools/coder/observation/file_observation.py +216 -0
  183. siada/tools/coder/observation/observation.py +71 -0
  184. siada/tools/coder/repo_map/__init__.py +157 -0
  185. siada/tools/coder/repo_map/dump.py +29 -0
  186. siada/tools/coder/repo_map/io.py +226 -0
  187. siada/tools/coder/repo_map/repo_map.py +881 -0
  188. siada/tools/coder/repo_map/special.py +203 -0
  189. siada/tools/coder/repo_map/token_counter.py +154 -0
  190. siada/tools/coder/repo_map/waiting.py +221 -0
  191. siada/tools/coder/reproduce_completion.py +39 -0
  192. siada/tools/coder/run_cmd.py +60 -0
  193. siada/tools/coder/test_completion.py +25 -0
  194. siada/tools/coder/tool_docs.py +44 -0
  195. siada/tools/compression_tool.py +200 -0
  196. siada/tools/read_many_files/README.md +220 -0
  197. siada/tools/read_many_files/__init__.py +25 -0
  198. siada/tools/read_many_files/file_processor.py +486 -0
  199. siada/tools/read_many_files/filters.py +326 -0
  200. siada/tools/read_many_files/formatters.py +204 -0
  201. siada/tools/read_many_files/models.py +189 -0
  202. siada/tools/read_many_files_tool.py +233 -0
  203. siada/tools/tool_call_format/__init__.py +55 -0
  204. siada/tools/tool_call_format/file_to_language.py +231 -0
  205. siada/tools/tool_call_format/formatter_factory.py +80 -0
  206. siada/tools/tool_call_format/formatters.py +282 -0
  207. siada/tools/tool_call_format/tool_call_formatter.py +54 -0
  208. siada/tools/web/__init__.py +0 -0
  209. siada/tools/web/web_crawl.py +208 -0
  210. siada/utils.py +194 -0
  211. siada_cli-0.0.1.dist-info/LICENSE +201 -0
  212. siada_cli-0.0.1.dist-info/METADATA +457 -0
  213. siada_cli-0.0.1.dist-info/RECORD +215 -0
  214. siada_cli-0.0.1.dist-info/WHEEL +4 -0
  215. siada_cli-0.0.1.dist-info/entry_points.txt +3 -0
@@ -0,0 +1,457 @@
1
+ Metadata-Version: 2.3
2
+ Name: siada-cli
3
+ Version: 0.0.1
4
+ Summary: Siada CLI is a Ai Pair Programming Tool in terminal
5
+ License: Apache-2.0
6
+ Requires-Python: >=3.12,<4.0
7
+ Classifier: Environment :: Console
8
+ Classifier: Intended Audience :: Developers
9
+ Classifier: License :: OSI Approved :: Apache Software License
10
+ Classifier: Programming Language :: Python
11
+ Classifier: Programming Language :: Python :: 3
12
+ Classifier: Programming Language :: Python :: 3.12
13
+ Classifier: Programming Language :: Python :: 3.13
14
+ Classifier: Topic :: Software Development
15
+ Requires-Dist: binaryornot (==0.4.4)
16
+ Requires-Dist: click (>=8.2.1,<9.0.0)
17
+ Requires-Dist: configargparse (>=1.7,<2.0.0)
18
+ Requires-Dist: diskcache (==5.6.3)
19
+ Requires-Dist: fastapi (>=0.110.0,<1.0.0)
20
+ Requires-Dist: grep-ast (>=0.9.0,<1.0.0)
21
+ Requires-Dist: litellm (>=1.72.6,<2.0.0)
22
+ Requires-Dist: openai (>=1.99.9,<2.0.0)
23
+ Requires-Dist: openai-agents (==0.2.5)
24
+ Requires-Dist: openhands-aci (==0.3.0)
25
+ Requires-Dist: partial-json-parser (>=0.2.1.1.post6,<1.0.0)
26
+ Requires-Dist: patch-ng (>=1.18.1,<2.0.0)
27
+ Requires-Dist: pexpect (>=4.9.0,<5.0.0)
28
+ Requires-Dist: prompt-toolkit (>=3.0.51,<4.0.0)
29
+ Requires-Dist: psutil (>=7.0.0,<8.0.0)
30
+ Requires-Dist: pydantic (>=2.6.0,<3.0.0)
31
+ Requires-Dist: pydantic-settings (>=2.2.0,<3.0.0)
32
+ Requires-Dist: pygments (>=2.19.1,<3.0.0)
33
+ Requires-Dist: rich (>=13.0.0,<14.0.0)
34
+ Requires-Dist: shtab (>=1.7,<2.0.0)
35
+ Requires-Dist: termcolor (>=3.1.0,<4.0.0)
36
+ Requires-Dist: tqdm (>=4.67.1,<5.0.0)
37
+ Requires-Dist: trafilatura (>=2.0.0,<3.0.0)
38
+ Requires-Dist: uvicorn (>=0.27.0,<1.0.0)
39
+ Project-URL: Homepage, https://github.com/liauto-siada/siada-cli
40
+ Description-Content-Type: text/markdown
41
+
42
+ # Siada CLI
43
+
44
+ **[简体中文](./docs/zh-CN/README_zh.md) | English**
45
+
46
+ ![Siada CLI Screenshot](./docs/assets/siada-cli-screenshot.png)
47
+
48
+ This repository contains Siada CLI, a command-line AI workflow tool that provides specialized intelligent agents for code development, debugging, and automation tasks.
49
+
50
+ With Siada CLI you can:
51
+
52
+ - Fix bugs in large codebases through intelligent analysis and automated solutions.
53
+ - Generate new applications and components using specialized frontend and backend agents.
54
+ - Automate development workflows through intelligent code generation and testing.
55
+ - Execute system commands and interact with development environments.
56
+ - Seamlessly support multiple programming languages and frameworks.
57
+
58
+ ## Installation/Update
59
+
60
+ 1. System Requirements
61
+ - MAC, Linux
62
+ - GCC 11+
63
+
64
+ 2. Installation Command
65
+ TODO
66
+
67
+
68
+ ## Installation (Developer Mode)
69
+
70
+ 1. **Prerequisites:** Ensure you have [Python 3.12](https://www.python.org/downloads/) or higher and [Poetry](https://python-poetry.org/docs/#installation) installed.
71
+
72
+ 2. **Clone and Install:**
73
+ ```bash
74
+ git clone https://github.com/your-org/siada-agenthub.git
75
+ cd siada-agenthub
76
+ poetry install
77
+ ```
78
+
79
+ 3. **Run CLI:**
80
+ ```bash
81
+ # Method 1: Run with Poetry
82
+ poetry run siada-cli
83
+
84
+ # Method 2: Activate virtual environment then use (recommended)
85
+ source $(poetry env info --path)/bin/activate
86
+ siada-cli
87
+ ```
88
+
89
+ ## Configuration
90
+
91
+ ### Model Configuration
92
+
93
+ **Method 1: Default Configuration**
94
+ - The system reads default configuration from `agent_config.yaml` file
95
+ - Current defaults: model `claude-sonnet-4`, provider `openrouter`
96
+
97
+ **Method 2: Customize via Configuration File**
98
+ - Regular Users
99
+ - Edit configuration file `~/.siada-cli/conf.yaml`
100
+ ```bash
101
+ # 1. Create configuration file in user home directory
102
+ cd ~
103
+ mkdir -p ~/.siada-cli
104
+ touch ~/.siada-cli/conf.yaml
105
+
106
+ # 2. Configuration file content example
107
+ llm_config:
108
+ model: "claude-sonnet-4" # Change to your desired model
109
+ provider: "openrouter"
110
+ ```
111
+ - Required when using OpenRouter provider
112
+ ```bash
113
+ export OPENROUTER_API_KEY="your_openrouter_key"
114
+ ```
115
+ - Developer Mode
116
+ - Edit the `llm_config` section in `agent_config.yaml` file:
117
+ ```yaml
118
+ llm_config:
119
+ provider: "openrouter"
120
+ model_name: "claude-sonnet-4" # Change to your desired model
121
+ ```
122
+
123
+ **Method 3: Via Environment Variables**
124
+ ```bash
125
+ # Set model
126
+ export SIADA_MODEL="claude-sonnet-4"
127
+
128
+ # Set provider
129
+ export SIADA_PROVIDER="openrouter"
130
+
131
+ # Required when using OpenRouter provider
132
+ export OPENROUTER_API_KEY="your_openrouter_key"
133
+ ```
134
+
135
+ **Method 4: Via Command Line Parameters (Highest Priority)**
136
+ ```bash
137
+ # Only change model (keep provider unchanged)
138
+ siada-cli --model claude-sonnet-4
139
+
140
+ # Change both model and provider
141
+ siada-cli --model gpt-4.1 --provider openrouter
142
+
143
+ # Only change provider (keep model unchanged)
144
+ siada-cli --provider openrouter
145
+ ```
146
+
147
+ > **Important Notes:**
148
+ > - **Complete Priority**: `Command line parameters` > `Environment variables (SIADA_ prefix)` > `Configuration file (agent_config.yaml)`
149
+ > - **Provider Requirements**: When using `openrouter`, must set `OPENROUTER_API_KEY` environment variable
150
+
151
+ ### Agent Configuration (Developer Mode)
152
+
153
+ Edit `agent_config.yaml` to customize agent behavior:
154
+
155
+ ```yaml
156
+ agents:
157
+ bugfix:
158
+ class: "siada.agent_hub.coder.bug_fix_agent.BugFixAgent"
159
+ description: "Specialized agent for code bug fixing"
160
+ enabled: true
161
+
162
+ llm_config:
163
+ provider: "openrouter"
164
+ model_name: "claude-sonnet-4"
165
+ repo_map_tokens: 8192
166
+ repo_map_mul_no_files: 16
167
+ repo_verbose: true
168
+ ```
169
+
170
+ ### Environment Variables
171
+
172
+ Set environment variables to configure behavior:
173
+
174
+ ```bash
175
+ # Siada-specific settings (use SIADA_ prefix)
176
+ export SIADA_AGENT="bugfix"
177
+ export SIADA_MODEL="claude-sonnet-4"
178
+ export SIADA_THEME="dark"
179
+
180
+ # Required when using OpenRouter provider
181
+ export OPENROUTER_API_KEY="your_openrouter_key"
182
+
183
+ # Unset environment variables in current terminal session
184
+ unset SIADA_MODEL
185
+ ```
186
+
187
+ ## Usage Modes
188
+
189
+ Siada CLI supports two usage modes to meet different usage scenarios:
190
+
191
+ ### Non-Interactive Mode
192
+
193
+ **Features:**
194
+ - One-time execution: Execute a single task and automatically exit
195
+ - Stateless: Does not retain session context
196
+ - Use cases: Automation scripts, CI/CD pipelines, single task execution
197
+
198
+ **Usage:**
199
+ ```bash
200
+ # Use --prompt parameter to trigger non-interactive mode
201
+ siada-cli --agent bugfix --prompt "Fix login errors in auth.py"
202
+
203
+ # Combine with other parameters
204
+ siada-cli --agent coder --model claude-sonnet-4 --prompt "Create a REST API endpoint"
205
+ ```
206
+
207
+ ### Interactive Mode
208
+
209
+ **Features:**
210
+ - Continuous conversation: Maintains session state after startup, allows continuous dialogue
211
+ - Context memory: AI remembers previous conversation content
212
+ - Real-time interaction: Supports slash commands, editor mode, and other advanced features
213
+ - Use cases: Exploratory programming, complex tasks, development work requiring multiple rounds of dialogue
214
+
215
+ **Usage:**
216
+ ```bash
217
+ # Start directly (defaults to interactive mode)
218
+ siada-cli --agent coder
219
+ ```
220
+
221
+ **Interactive Process:**
222
+ ```
223
+ > Create a user management API
224
+ [AI response...]
225
+ > Add data validation to this API
226
+ [AI response...]
227
+ > Write some unit tests
228
+ [AI response...]
229
+ ```
230
+
231
+ ## Command Line Options
232
+
233
+ ```bash
234
+ # Use a specific agent
235
+ siada-cli --agent coder
236
+ # Supports abbreviations
237
+ siada-cli -a coder
238
+
239
+ # Non-interactive mode with a single prompt
240
+ siada-cli --prompt "Fix authentication errors in login.py"
241
+ # Supports abbreviations
242
+ siada-cli -p "Fix authentication errors in login.py"
243
+
244
+ # Use a different model
245
+ siada-cli --model claude-sonnet-4
246
+
247
+ # Use OpenRouter provider (requires API key setup)
248
+ siada-cli --provider openrouter
249
+
250
+ # Set color theme
251
+ siada-cli --theme dark
252
+
253
+ # Enable verbose output
254
+ siada-cli --verbose
255
+
256
+ # List all available models
257
+ siada-cli --list-models
258
+ siada-cli --models
259
+ ```
260
+
261
+ ## Slash Commands
262
+
263
+ In the CLI, you can use slash commands for additional functionality:
264
+
265
+ - `/shell` - Switch to shell mode to execute system commands (type `exit` or `quit` to exit shell mode)
266
+ - `/models` - List available AI models
267
+ - `/run <command>` or `!<command>` - Execute shell commands
268
+ - `/editor` - Open editor for multiline input
269
+ - `/exit` or `/quit` - Exit the application
270
+
271
+ ### Shell Mode Usage Guide
272
+
273
+ Siada CLI provides two ways to execute system commands:
274
+
275
+ #### Method 1: Use `/shell` to switch to shell mode
276
+ Switch to persistent shell mode where you can continuously execute multiple system commands:
277
+
278
+ ```bash
279
+ > /shell
280
+ # After entering shell mode, you can execute multiple commands
281
+ ls -la
282
+ cd my-project
283
+ npm install
284
+ git status
285
+ # Use exit or quit to exit shell mode
286
+ exit
287
+ ```
288
+
289
+ #### Method 2: Use `!` prefix to execute commands directly
290
+ Execute single system commands directly in interactive mode without switching modes:
291
+
292
+ ```bash
293
+ > !ls -la
294
+ > !git status
295
+ > !npm run dev
296
+ ```
297
+
298
+ Differences between the two methods:
299
+ - **`/shell`**: Suitable for scenarios requiring continuous execution of multiple system commands, switch once and use persistently
300
+ - **`!<command>`**: Suitable for occasionally executing single system commands, returns to AI conversation mode immediately after execution
301
+
302
+ ## Agent Types
303
+
304
+ ### Bug Fix Agent (`--agent bugfix` / `-a bugfix` / `--bugfix`)
305
+ > **Only supports non-interactive mode!**
306
+
307
+ Specialized for identifying, analyzing, and fixing bugs in codebases. Provides detailed analysis and automated fix suggestions.
308
+
309
+ ### Code Generation Agent (`--agent coder` / `-a coder` / `--coder`)
310
+ General-purpose code development agent for creating new features, refactoring code, and implementing functionality in various programming languages.
311
+
312
+ ### Frontend Generation Agent (`--agent fegen` / `-a fegen` / `--fegen`)
313
+ Focused on frontend development tasks, including React components, CSS styling, and user interface implementation.
314
+
315
+ ## Examples
316
+
317
+ ### Activate Virtual Environment (Developer Mode Only)
318
+ First, enter the siada-agenthub project directory and activate the virtual environment:
319
+
320
+ ```bash
321
+ # Enter project directory
322
+ cd ~/path/to/siada-agenthub
323
+
324
+ # Activate virtual environment (recommended method)
325
+ source $(poetry env info --path)/bin/activate
326
+
327
+ # Or use Poetry run (no need to activate environment)
328
+ # poetry run siada-cli
329
+ ```
330
+
331
+ ### Usage Examples
332
+
333
+ After activating the environment, you can choose between interactive mode or non-interactive mode to interact with AI agents.
334
+
335
+ **Interactive Mode:**
336
+
337
+ ```bash
338
+ # Enter project directory
339
+ cd my-project/
340
+
341
+ # Start interactive mode
342
+ siada-cli --agent coder
343
+
344
+ # Then you can input prompts in the interactive interface
345
+ > Create a REST API server with user authentication using FastAPI
346
+ # AI will respond and you can continue the conversation...
347
+ > Add logging functionality to this API
348
+ ```
349
+
350
+ **Non-Interactive Mode (One-time execution):**
351
+
352
+ ```bash
353
+ # Execute a single task and exit (uses coder agent by default)
354
+ siada-cli --prompt "Create a user registration API"
355
+
356
+ # Specify a specific agent to execute tasks
357
+ siada-cli --agent bugfix --prompt "Fix authentication errors in login.py"
358
+ siada-cli --agent fegen --prompt "Create a responsive navigation bar component using React and Tailwind CSS"
359
+ ```
360
+
361
+ **Exit Virtual Environment (Developer Mode Only):**
362
+
363
+ ```bash
364
+ # Exit virtual environment after use
365
+ deactivate
366
+ ```
367
+
368
+ ## Common Tasks
369
+
370
+ ### Debug and Fix Code Issues
371
+
372
+ ```text
373
+ > Analyze this error message and suggest a fix: [paste error]
374
+ ```
375
+
376
+ ```text
377
+ > Help me reproduce this intermittent bug that occurs during high load
378
+ ```
379
+
380
+ ### Code Generation and Development
381
+
382
+ ```text
383
+ > Implement a caching layer for the database queries in this service
384
+ ```
385
+
386
+ ```text
387
+ > Refactor this monolithic function into smaller, more maintainable pieces
388
+ ```
389
+
390
+ ### Frontend Development
391
+
392
+ ```text
393
+ > Create a responsive dashboard layout with sidebar navigation
394
+ ```
395
+
396
+ ```text
397
+ > Add form validation to the user registration form
398
+ ```
399
+
400
+ ## Troubleshooting
401
+
402
+ ### Common Issues
403
+
404
+ **Command not found:**
405
+ If running `siada-cli` directly shows command not found:
406
+ - This is normal behavior in developer mode as the command is installed in the virtual environment
407
+ - Refer to examples to activate the virtual environment
408
+
409
+ **Model API errors:**
410
+ - Check your internet connection
411
+ - If using OpenRouter provider, ensure API key is set correctly
412
+ - If using OpenRouter provider, verify your account has sufficient credits
413
+
414
+ **Installation issues:**
415
+ - Ensure you have Python 3.12+ installed
416
+ - Install Poetry using the official installation method
417
+ - Try removing `poetry.lock` and re-running `poetry install`
418
+
419
+ **Agent not working:**
420
+ - Check if the agent is enabled in `agent_config.yaml`
421
+ - Verify the agent class path is correct
422
+ - Use `--verbose` flag to see detailed output
423
+
424
+ For more detailed troubleshooting, check logs and use the `--verbose` flag for additional debug information.
425
+
426
+ ## Contributing
427
+
428
+ We welcome contributions to Siada CLI! Whether you want to fix bugs, add new features, improve documentation, or suggest enhancements, your contributions are greatly appreciated.
429
+
430
+ To get started with contributing, please read our [Contributing Guide](./docs/CONTRIBUTING.md) which includes:
431
+
432
+ - Our project vision and development goals
433
+ - Project directory structure and development guidelines
434
+ - Pull request guidelines and best practices
435
+ - Code organization principles
436
+
437
+ Before submitting any changes, please make sure to check our issue tracker and follow the contribution workflow outlined in the guide.
438
+
439
+ ## Acknowledgements
440
+
441
+ Siada CLI is built upon the foundation of numerous open source projects, and we extend our deepest respect and gratitude to their contributors.
442
+
443
+ Special thanks to the [OpenAI Agent SDK](https://github.com/openai/openai-agent-sdk) for providing the foundational framework that powers our intelligent agent capabilities.
444
+
445
+ For a complete list of open source projects and licenses used in Siada CLI, please see our [CREDITS.md](./docs/CREDITS.md) file.
446
+
447
+ ## License
448
+
449
+ Distributed under the Apache-2.0 License. See [`LICENSE`](LICENSE) for more information.
450
+
451
+ ## DISCLAIMERS
452
+ See [disclaimers.md](./disclaimers.md)
453
+
454
+ ----
455
+ <div align="center">
456
+ Built with ❤️ by Li Auto Code Intelligence Team and the open source community
457
+ </div>
@@ -0,0 +1,215 @@
1
+ agent_config.yaml,sha256=TL5PqTNyWPdsD7497ajWOKr9L_WQugcTh2WYZYtsxyQ,1203
2
+ siada/__init__.py,sha256=46zJkYDJ0oJwR8EcBQBPde5sX7YeO8fN_bsLVoowRfE,301
3
+ siada/agent_hub/__init__.py,sha256=1rY_ta1j3a9f9cWV0JsgRZO6xZK_zP6nxQSHasRWhug,196
4
+ siada/agent_hub/coder/bug_fix_agent.py,sha256=jtKDNTB6Keg45lpRCiIfaTA0XHgHJxtpTWnJQpwl9Ok,15011
5
+ siada/agent_hub/coder/code_gen_agent.py,sha256=W_TBcw5ngqZnUZrX8RS6apSnTPu0t4OusSBwYDxBhH0,8586
6
+ siada/agent_hub/coder/fe_gen_agent.py,sha256=qE_vn0c9GHC4BrmVmSN2uq328c2CqV7CPFgOM4MSXAk,1286
7
+ siada/agent_hub/coder/issue_review_agent.py,sha256=mnPClL_vqJ0ST7DHbk4ZuxYti2f_SMY9nD7eLlMcmvw,2402
8
+ siada/agent_hub/coder/prompt/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
9
+ siada/agent_hub/coder/prompt/base/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
+ siada/agent_hub/coder/prompt/base/capabilities.py,sha256=0AM5np1BKaFUcit4W8iLRujoF6LWEOEDarlXNUWUIlg,2225
11
+ siada/agent_hub/coder/prompt/base/non_interactive.py,sha256=uoRKi0G-Vq5GeBsoJuTwAsutWB6cXZcQEQWJhiGZsEA,303
12
+ siada/agent_hub/coder/prompt/base/prompt_builder.py,sha256=uAYN6fi0MJNxwXllQEmGpG_ugXv2vJ0CFTA6rrXgw4M,851
13
+ siada/agent_hub/coder/prompt/base/rules.py,sha256=66SYcIDHxsleDGKL6pkYzA9ZUCAjObP97_vfjSRx_D0,4492
14
+ siada/agent_hub/coder/prompt/base/tool_use.py,sha256=WyPPQKkPrUEeDdmgFjL91erSHrVJN5g96iJ_05jkKSE,432
15
+ siada/agent_hub/coder/prompt/bug_prompt/bug_fix_prompt.py,sha256=04LYr5pfRIgBJDIcRP6q6115SQ6B_uHj4YlP9IUgk84,2764
16
+ siada/agent_hub/coder/prompt/bug_prompt/rules.py,sha256=fGHWH61qTHzlvaIH-G5BYUqIuqcOVeJKJzP2IYg_1XY,6056
17
+ siada/agent_hub/coder/prompt/code_gen_prompt.py,sha256=TVLSOjvOM5b3HZwpdm9j-vi9cKtAORLSKhPIZ0L3RhE,2339
18
+ siada/agent_hub/coder/prompt/fe_gen_prompt.py,sha256=tTnhFM0eBMQb6JRCbgQZNBF0nE0kh0NTvVXbDxU8jXk,2349
19
+ siada/agent_hub/coder/prompt/issue_review_prompt.py,sha256=EvSDg9u-gZaDVtbyweGcidHHAHpWD-Q4PWH4ayyNrII,7190
20
+ siada/agent_hub/coder/tracing/__init__.py,sha256=OnoDIH79mHGXdm_UO2n55f3cHFTLPEMIiymD2E0Gw0A,495
21
+ siada/agent_hub/coder/tracing/logger_tracing_processor.py,sha256=IvHspRbWdTjszfwNHYgBWk--aU3iIC51pMorg5dsW7A,19236
22
+ siada/agent_hub/hooks/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
23
+ siada/agent_hub/hooks/io_hooks.py,sha256=s56avra3BD1Pf3PVMpwcijcXQzFukWn6Tmr_fdigaGw,670
24
+ siada/agent_hub/siada_agent.py,sha256=-7Am864pZDsi_bQkb112gbKULOdBUeKZ9Lf6f0nwZnk,7887
25
+ siada/config/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
26
+ siada/config/config_loader.py,sha256=y26sWE44QtK_JBU-pPKkQWFqxIO4SZRwQCpYI5gVv3w,1842
27
+ siada/entrypoint/__init__.py,sha256=Fzjr4TvboEHvi9oOeXuNsyc9ngtP8r703u83RtXbPjY,43
28
+ siada/entrypoint/args_parser/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
29
+ siada/entrypoint/args_parser/args.py,sha256=_G2ouwfRRn6wlOh5-DHaFVOZkGFk-OBGx4Vn1i2UhBY,5560
30
+ siada/entrypoint/interaction/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
31
+ siada/entrypoint/interaction/base_turn.py,sha256=GeW-ITgNJliJXi_Jztzveqv88yWrWqfgKrOLc52-aVA,3016
32
+ siada/entrypoint/interaction/config.py,sha256=AKC_KVERrHNW68CD6VCfjp-ki6BLlUbv2ZVsMPpvEN4,820
33
+ siada/entrypoint/interaction/controller.py,sha256=AIM45SURfKMWIs7WakGHjfcKfYViMQbyIJPtZwj98iw,4551
34
+ siada/entrypoint/interaction/nointeractive_controller.py,sha256=QbYXau-bpXl11FZ_sAUE3MEV23sn8Ry0sMaKcB1yb2g,869
35
+ siada/entrypoint/interaction/turn/interface.py,sha256=D8ypB_UKmoqzE9Ivs8OzsNfF4EnmqqoVB_WsOOsp_rg,3189
36
+ siada/entrypoint/interaction/turn/models.py,sha256=vbK8mdtfOkGDa60TVfKEIL9SsWS-40oBE4TK3wgm5H8,750
37
+ siada/entrypoint/interaction/turn/run_turn.py,sha256=WKWscmml0_gzRxX27azYkMFMIyaw2fcqaaMv5sMuUJg,27146
38
+ siada/entrypoint/interaction/turn_factory.py,sha256=3taIw29ydBCVDijUaQSaahvrap9n_E_BhxCPkQ4ZYMg,1119
39
+ siada/entrypoint/interaction/turn_models.py,sha256=UMcF_jaz9EuaehAttpIgcRz2crdHjW2dQX0qCQMYQwY,657
40
+ siada/entrypoint/siadahub.py,sha256=hnjeSzJDN7Qe0LkrpKKB5KWa4srb3d9cbdsDBnUPfGE,13104
41
+ siada/foundation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
42
+ siada/foundation/code_agent_context.py,sha256=LPgI1M_ExHhWYH3g2CoaM_k7Q1y_NArOoqlVnMAz7yk,1785
43
+ siada/foundation/config.py,sha256=rBhs9vbVNsAIqI3ngm_JhowSFgbzhWu_KUAiThCW744,1545
44
+ siada/foundation/constants.py,sha256=Fr3KdC-OfWGzHub2NdkQHTKgcAOtoXiNW38nl8bXnvU,174
45
+ siada/foundation/context.py,sha256=1E6nM_dHxMvw5J0xYPlHF-rL4OaYjwHTK6xa3XQcoWU,1923
46
+ siada/foundation/logging.py,sha256=5wbL9HH4TTPK60XbT8azuDx5ghdMWt2I1HoH6BDhcYA,11053
47
+ siada/foundation/tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
48
+ siada/foundation/tools/get_git_diff.py,sha256=4GhhDGopfbQsMaSh0Kdyx8kzMvIsIlcEmC_H09DQhPE,3293
49
+ siada/io/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
50
+ siada/io/banner.py,sha256=r3OC-neLeMuyyTEpJGf33wADp-wa5oaLeVFZNaG-rQc,6014
51
+ siada/io/color_settings.py,sha256=hfiTyIH3-4KwXBPcWbe6rN1QdMax0TXwXeexBhIB1QU,8557
52
+ siada/io/color_utils.py,sha256=yjO7FoMRx3gNcQ41_DrXocpyy6g_fDsGBNPBLVrrbUU,585
53
+ siada/io/components/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
54
+ siada/io/components/mdstream.py,sha256=T1vqW0FsO0YjwQVyPB6HXO2TOmaGzrn13K2j6Qhrxvc,6897
55
+ siada/io/console_printer.py,sha256=JEBfTjskgLPZspJ8vvXdQYP7fSgpDqc2lGraCbIWtNQ,2564
56
+ siada/io/io.py,sha256=HaEZhtJ7CPc8mC5vHpHFAAhUhlotBjR85mvVUaie0ao,23006
57
+ siada/io/key_bindings.py,sha256=tIkH55INfxUTX7UmtYDscjJZCXAjO1RCM5bIhrlc-0A,5508
58
+ siada/io/notification_command.py,sha256=jdRY9vVs7jQzYNk4Mh8Em1Qi4ZiBbz3DtOi1WeTQ3Ww,1748
59
+ siada/io/test_banner.py,sha256=b6e6vpiTjErapPOzuZO2SFv9ZRQIVQo7HXm619sqpcM,1627
60
+ siada/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
61
+ siada/models/agent.py,sha256=obyPt10ZLb1tcr95Bfsg0168s9RAyeebFCAnYFlSH2s,1697
62
+ siada/models/coder/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
63
+ siada/models/converter.py,sha256=0EkwGTSinDIuvcStPR8W63jBCDReEcReJi-iMUsWq6Y,911
64
+ siada/models/model_base_config.py,sha256=W7-8Gz_x36dLs6uMd3JSpdVMwIcJnMt5i6YwWpe4OYk,3078
65
+ siada/models/model_run_config.py,sha256=lXvYT_5PslyNnveeU0UHQ2sZR05v05qQqZwnxtPK07U,4464
66
+ siada/provider/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
67
+ siada/provider/client_factory.py,sha256=cv1ibiyBaB7m6LJltRBf0mKLTEd81FK9ZVKjXxAN9mw,4159
68
+ siada/provider/llm_client.py,sha256=Arb5zv9qcrz7txk8fOq-4O_AStGXOWDpa9keGPKYksk,225
69
+ siada/provider/openrouter/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
70
+ siada/provider/openrouter/coverter.py,sha256=biopMZOXVlxBrT--kyEot-jqkIbaYV2vhNbADeluM0Q,928
71
+ siada/provider/openrouter/openroute_provider.py,sha256=O_d6CiaQfgtNk2HB5-fuFq9ToK8i9sARzbOH5q9kYdw,1011
72
+ siada/provider/provider_factory.py,sha256=hYCef33tLgep_SB2msEc0m3JIzCSZpJbLdfMPN6Qd4Q,1958
73
+ siada/queries/tree-sitter-language-pack/README.md,sha256=ivZSEuWqYfUVLZl2AZZGRlm0bQsaG-VTBKBwACyM07k,291
74
+ siada/queries/tree-sitter-language-pack/arduino-tags.scm,sha256=HbgdothT9Jjk56COXTtUkVAdZ14rZNnqzLbWVLeRs5U,177
75
+ siada/queries/tree-sitter-language-pack/c-tags.scm,sha256=EIz45o5hBh8yEuck5ZR_4IpcGyWSeNrzxFmtkKZGt2k,461
76
+ siada/queries/tree-sitter-language-pack/chatito-tags.scm,sha256=ISkmrp5gIVxoYIPnoqxxqBlZj5G9tzhwJMx6b0dEKnQ,338
77
+ siada/queries/tree-sitter-language-pack/commonlisp-tags.scm,sha256=GYJlluTPEdrxn4jpYTX5YQAqk171rVBw7IBiCygMgtw,4713
78
+ siada/queries/tree-sitter-language-pack/cpp-tags.scm,sha256=2fSqTUcc01ABMHkA0JeG8axEOEXRfEIul8UKc9_tKGI,809
79
+ siada/queries/tree-sitter-language-pack/csharp-tags.scm,sha256=KORfK3ehKor6Pf6T5iniuoQr16EcHtUe0q3XIsCjPJs,1162
80
+ siada/queries/tree-sitter-language-pack/d-tags.scm,sha256=LDP3orqZ98TTFSkV_PODEs8LspTcCqUMvKcLdZwtgkc,1420
81
+ siada/queries/tree-sitter-language-pack/dart-tags.scm,sha256=Pa_leZjxxXQO7mH_zF5o-kZ5lqVxgvbyp8oQb_nZ9KA,2267
82
+ siada/queries/tree-sitter-language-pack/elisp-tags.scm,sha256=1r8iOMM_DEpXEvlA1rE7KlhGEzcqa2W6eH4F2d1iu7Y,246
83
+ siada/queries/tree-sitter-language-pack/elixir-tags.scm,sha256=fg9TDpbCixLr8UXNcNnfgFlR3Y7d3vtzLRb3LK84UaQ,1682
84
+ siada/queries/tree-sitter-language-pack/elm-tags.scm,sha256=Wp1D5wEGzFa_2biBWRaKbghDs57lDGqqsZd7DbPkdn4,953
85
+ siada/queries/tree-sitter-language-pack/gleam-tags.scm,sha256=wdFVAkepPAZ10-5sBIVQSl45v95wZP9Foi_iYvM4YII,1416
86
+ siada/queries/tree-sitter-language-pack/go-tags.scm,sha256=TE4fQ7PtQvHKPetrhHeDqjMz01KFKFsxFjypnJMv8pI,1339
87
+ siada/queries/tree-sitter-language-pack/java-tags.scm,sha256=Xid8cnOPL1v5SOtxfq8dOi98bWrUPL7XeO8_I2qBrfE,624
88
+ siada/queries/tree-sitter-language-pack/javascript-tags.scm,sha256=0qlZIwDdsvoEGM0cYD3s2ez27FbYuz8epZAo-cLP1uI,2306
89
+ siada/queries/tree-sitter-language-pack/lua-tags.scm,sha256=lqhCVn7KnBVhW8oo_wY9me15nEBTu9BS5YlF1zUTOPs,945
90
+ siada/queries/tree-sitter-language-pack/ocaml-tags.scm,sha256=NAcyzmQuQPUjkchrQvcfhsvKqdcqbAt5eFb1chfEhMA,2695
91
+ siada/queries/tree-sitter-language-pack/ocaml_interface-tags.scm,sha256=2Vtp9o9EgQ0_kLUkIDXLOAkX9wp5cj_NwdovlwhiidQ,2009
92
+ siada/queries/tree-sitter-language-pack/pony-tags.scm,sha256=gGNWmiHzv8Ge0HZo81tev-xIqHIQqjRxPR52G048-zs,2191
93
+ siada/queries/tree-sitter-language-pack/properties-tags.scm,sha256=AbcjxhGpG6F6lpCHs83HRXD223b-wrHQYv-i9j09wtc,135
94
+ siada/queries/tree-sitter-language-pack/python-tags.scm,sha256=KDCrM7iaUwXZ_hb2wVHrE2_EVCq_ASo3-BmbzsLtFk0,437
95
+ siada/queries/tree-sitter-language-pack/r-tags.scm,sha256=3cb2Wt-8Tt1RGBNDPgo4nI9qROf00ONNVqPHv8Th-Mk,461
96
+ siada/queries/tree-sitter-language-pack/racket-tags.scm,sha256=iri2aFEabiim-geb-t3ClDVp1Zi8T_rX1H9L0tlpqK8,224
97
+ siada/queries/tree-sitter-language-pack/ruby-tags.scm,sha256=vIidsCeE2A0vdFN18yXKqUWmpXMrGXyo4un_0Mxqr6s,1290
98
+ siada/queries/tree-sitter-language-pack/rust-tags.scm,sha256=3rz1XqKaOPKPWRUNPTW5OX_TYEDj5tQZfMxBH3EMB6g,1451
99
+ siada/queries/tree-sitter-language-pack/solidity-tags.scm,sha256=3uCJsbhwp-dVTiSsrGLt-PQ0uAnjmqUeHFPSEXd2JvM,1395
100
+ siada/queries/tree-sitter-language-pack/swift-tags.scm,sha256=ZvJcfjmUDZ9w14AXKSPPxf4gvpdE_qzBxDjfCczYrIQ,1439
101
+ siada/queries/tree-sitter-language-pack/udev-tags.scm,sha256=avj3u4prIR7o8hymHezOsqrOqjPSLGYo7C_lOL4Dxlg,417
102
+ siada/queries/tree-sitter-languages/README.md,sha256=NSE0fdSXX_NvlnTuUdvGJAlzODsnQbzvcsimU0yCekU,2467
103
+ siada/queries/tree-sitter-languages/c-tags.scm,sha256=EIz45o5hBh8yEuck5ZR_4IpcGyWSeNrzxFmtkKZGt2k,461
104
+ siada/queries/tree-sitter-languages/c_sharp-tags.scm,sha256=wKyFtOFIk-kqIFB2yJBbu1VGRUhdkAnDpxo8sXubkjw,1025
105
+ siada/queries/tree-sitter-languages/cpp-tags.scm,sha256=cAFwtQk3ZKsvCVWrp1fmhSwOP8WGTCEDRR5CQuzLlY4,803
106
+ siada/queries/tree-sitter-languages/dart-tags.scm,sha256=AjxpyJIXuLjP5u3U89bhWergxus0fbUKk1x1uIHCKPw,2251
107
+ siada/queries/tree-sitter-languages/elisp-tags.scm,sha256=wjm1YYD1vgjBbh0E2CzUnmagl82Uq6-LcEojmvhiJkY,332
108
+ siada/queries/tree-sitter-languages/elixir-tags.scm,sha256=eO20nPIwI7_vq4Fob6U5RjX1wLKgn6Gglj41ITpE6eg,1605
109
+ siada/queries/tree-sitter-languages/elm-tags.scm,sha256=4qTEWJCAd7_BOfwyky0q_NYzAMtGdiq7qwo1GIhXmag,951
110
+ siada/queries/tree-sitter-languages/go-tags.scm,sha256=mHtS5NEuxWJGfVz1rq4YlJRMYVDAl5tf7iYnm6RikVE,848
111
+ siada/queries/tree-sitter-languages/hcl-tags.scm,sha256=yOVCBeF4C3ZrFG-gg0adWg2QkxylPcI2dbVeEgD7EPE,2137
112
+ siada/queries/tree-sitter-languages/java-tags.scm,sha256=7WKb-djGv0Ief6XEWQPYpfLpgJHtMPPukIUi55PegvE,627
113
+ siada/queries/tree-sitter-languages/javascript-tags.scm,sha256=svVct6pxbcYP_-xEBwzGy6t1SlN7ajkEUCivUkBZn_Q,2251
114
+ siada/queries/tree-sitter-languages/kotlin-tags.scm,sha256=ugk8v7Or3PXiBk-_HfZznwLuV-b-s3TYm03Wm3q2h_o,632
115
+ siada/queries/tree-sitter-languages/ocaml-tags.scm,sha256=NAcyzmQuQPUjkchrQvcfhsvKqdcqbAt5eFb1chfEhMA,2695
116
+ siada/queries/tree-sitter-languages/ocaml_interface-tags.scm,sha256=2Vtp9o9EgQ0_kLUkIDXLOAkX9wp5cj_NwdovlwhiidQ,2009
117
+ siada/queries/tree-sitter-languages/php-tags.scm,sha256=vmE5CH2N46HiQxUpR_FL41ilQqsWsigojiacWXtwTuE,714
118
+ siada/queries/tree-sitter-languages/python-tags.scm,sha256=6-npVJM6y6C1q7d6VgcfohN75_iu7QtrLnvwO_L2EmA,325
119
+ siada/queries/tree-sitter-languages/ql-tags.scm,sha256=9qVpBGSgFC9fSK4E_5sO2gYe4_jPvN-D18SD6S5lNR8,707
120
+ siada/queries/tree-sitter-languages/ruby-tags.scm,sha256=vIidsCeE2A0vdFN18yXKqUWmpXMrGXyo4un_0Mxqr6s,1290
121
+ siada/queries/tree-sitter-languages/rust-tags.scm,sha256=9ljM1nzhfPs_ZTRw7cr2P9ToOyhGcKkCoN4_HPXSWi4,1451
122
+ siada/queries/tree-sitter-languages/scala-tags.scm,sha256=UxQjz80JIrrJ7Pm56uUnQyThfmQNvwk7aQzPNypB-Ao,1761
123
+ siada/queries/tree-sitter-languages/typescript-tags.scm,sha256=OMdCeedPiA24ky82DpgTMKXK_l2ySTuF2zrQ2fJAi9E,1253
124
+ siada/services/__init__.py,sha256=Qart3eX0StRzLRckMjEe0_2ZDClR5zX8qWujAK1C5iw,624
125
+ siada/services/at_file_recommendation_design_document.md,sha256=y-Q-jGLr9-K3uckHJdyhVL4vVrzWF_18JcKUqdugQps,35557
126
+ siada/services/code_context_manager.py,sha256=-gyuE3Mj4vM8vOpggwt9wiuSUwkWzXd6wjjnoLWFoL8,4578
127
+ siada/services/enhanced_fix_result_check.py,sha256=Oxfn0AsjNjcswklA88Oeo6s9QeySA4qi4_puwSNP9Q8,24375
128
+ siada/services/execution_trace_collector.py,sha256=1z0zc8jGrl0WNwlcMVPkoXNsR9hUkP_bu6Nct_7AoyM,7014
129
+ siada/services/file_recommendation/__init__.py,sha256=E4E8vpSF4ca7qBXTCKQsgvZG3--_coIjj38mBLPX7gk,4237
130
+ siada/services/file_recommendation/core/__init__.py,sha256=Ob7a7dNDMhJxZ748GDS5y2OsxNsYXC1rD0G49XYDxSs,438
131
+ siada/services/file_recommendation/core/completion_engine.py,sha256=V6AxP2UtGHlHA3NTGkt2DGgFxgx0mK1mlaq3cw5lGds,11942
132
+ siada/services/file_recommendation/core/config.py,sha256=6qgnQ99Kh2whrmT7iXcOk73wpP6OH5H4dwI14pJydVM,1506
133
+ siada/services/file_recommendation/core/file_discovery.py,sha256=Rai1CXa6devnU_EPSalTgVjmPCEKDSvyuiiqsgZcRjI,12329
134
+ siada/services/file_recommendation/core/suggestion.py,sha256=8bw2gpa7zu0wAunn0BjK_-nnSliUNiiSjDdZHQn_sR8,2817
135
+ siada/services/file_recommendation/utils/__init__.py,sha256=dtqlAgcPEAtmjz9co4i1nUhen1jML7bvqMXR_JYATqY,399
136
+ siada/services/file_recommendation/utils/path_utils.py,sha256=IYyeqsFuV1_wE8k8D5Zv47CFL4rb4Afq3d6f9HkFD1M,2893
137
+ siada/services/file_recommendation/utils/text_utils.py,sha256=7xu9p_g25AxeNmiSLLw5XI4C0z_qa0cCTfCPafW2BhU,6298
138
+ siada/services/fix_result_check.py,sha256=3b-suzJoIivX5pqTxAa6WMN_DGAnxFqAoRj6kj70aio,16184
139
+ siada/services/handle_at_command/README.md,sha256=1xCKJw7svQjZRJv9z7jXO1xwesebD5AGUX7BbsCtDcc,7138
140
+ siada/services/handle_at_command/__init__.py,sha256=tUC0u1TJ7A41CBdShCvAKQYXGgaU1bmUqLy-Xgwr6-E,3150
141
+ siada/services/handle_at_command/exceptions.py,sha256=OqCHsvPLNvAFpIlCf8ABG9Z9sfrbUXpQBBG2fhTq8WI,1058
142
+ siada/services/handle_at_command/models.py,sha256=xiKyxvPr0dAKbKqU65HEqu_OrDtJnfs-UDBwEwTaIpc,2789
143
+ siada/services/handle_at_command/parser.py,sha256=KoR6Dg6bdLr64MGTneqUjIK6hFPMTzdTt9CmzayJHsk,6013
144
+ siada/services/handle_at_command/processor.py,sha256=zhqCYJ5PcTQqh7jhaSPCOqPvHH4eBfC7Kz_hohfG8Zw,12371
145
+ siada/services/handle_at_command/resolver.py,sha256=Od-NhvQC69YINFF2opkKNPCPkhymCz9wM4fuOEz_6-A,11818
146
+ siada/services/handle_at_command/utils.py,sha256=_B5rwsC-ZqT-fxxnIwZqGz4KbXmnbNwdBmwDjgJ9uLE,7875
147
+ siada/services/model_info_service.py,sha256=Y8AF30E6t1q76ftfIi8cwaLlep94Uy8A6Gwn-QiVHqE,3076
148
+ siada/services/siada_runner.py,sha256=M4CaiJ-sEYi9zncAR4uccN6QXOY2NAY8tSf6u74kvxI,5869
149
+ siada/session/__init__.py,sha256=pzKQ5D6VHL4PyNFS3fuuXkE2-Guqyh8PV9s0BHs9AC8,629
150
+ siada/session/session_manager.py,sha256=GOTBGcpv5sikbQhwfVm5vfESp_TKNJDyN4o0Z7Dl-nM,1924
151
+ siada/session/session_models.py,sha256=SBOgk_4k5K16jIUqilcXYW_L2miqBmiy0s83uo3xupw,1220
152
+ siada/support/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
153
+ siada/support/completer.py,sha256=ie5EQqRt77QJ-S_RatUV9PNMrsaXUoB4oAzVLIHE0oU,7982
154
+ siada/support/editor.py,sha256=O-OZM8K1q3EOrnc-fC7adK7fwgCtKliH4xymevFWrhk,4328
155
+ siada/support/envprocessor.py,sha256=rHQK5egOyIdKW_UA8Dtd8eiDFZoGhS8fIXax0EeAUjY,1394
156
+ siada/support/repo.py,sha256=oXjO6tVZR93XI3KZncfr0wKSNc4Z1sbNgC3b0t_K1I8,1236
157
+ siada/support/slash_commands.py,sha256=F9N6Nm4p30TAbK4z0hOihjObShSyYaCF2JodNvXV730,14138
158
+ siada/support/spinner.py,sha256=jNv-MERen42U-tBpBc9R7zKk15TBUDx8ztcy7K5v7y0,11522
159
+ siada/tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
160
+ siada/tools/ast/README.md,sha256=GIalGCDtwUvLanjwAlkFNGP6D1b7JGErPpEbelfUB5k,9779
161
+ siada/tools/ast/ast_tool.py,sha256=OgDb6rV1vKYGD1Y8NyzVhHg5fIgRthI2H5vDdoYj26U,11274
162
+ siada/tools/ast/models.py,sha256=3_PQhz7eD3bommwIMrnaqna0W1HsyNEEL1CrIAuePdw,261
163
+ siada/tools/coder/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
164
+ siada/tools/coder/ask_followup_question.py,sha256=E_KK-U8AEYzlqIbtnkEzk23xzd4_a9s0yS7S9D8g8_c,2575
165
+ siada/tools/coder/cmd_runner.py,sha256=3h8VPX27QoYvMIV6QtU1hthrX-fxZSmZ1N3YB_s59VQ,4229
166
+ siada/tools/coder/file_operator.py,sha256=Ya58XTUCLVZUv2IBUJJ9Yz8o72JHxpJNK6xWhC8OoD8,10556
167
+ siada/tools/coder/file_search/README.md,sha256=KN0afYggEf3-LevlA5VO3hFA8wCDs2WJ6w_nuFVpL9c,5184
168
+ siada/tools/coder/file_search/__init__.py,sha256=gX8mQrsLumH7O9wCVkla_Mif4-pfwvymLdIWOWnNwWo,306
169
+ siada/tools/coder/file_search/bin/rg-linux-arm64,sha256=4H1chfqcp0D_Sri7rGCh4Rx6XOJCQ194IKA_fCDvYnY,5233424
170
+ siada/tools/coder/file_search/bin/rg-linux-x64,sha256=9AEVTiOT-QAqx35Bn57lUhwY9PjNPjIpOXL0k7oG_Oc,6597984
171
+ siada/tools/coder/file_search/bin/rg-macos-arm64,sha256=Dgy4P1GV8fUbuP7vH_9bCxcegr0dtr013u5wGj5xAvg,4375216
172
+ siada/tools/coder/file_search/bin/rg-macos-x64,sha256=kj3MJcq1fTP0590EdtS3SlVEAaOIF-JGqNYQHc1RxQ8,5162504
173
+ siada/tools/coder/file_search/bin/rg.exe,sha256=8WK1TeKt_HLXitsdutot7doRGuCl4vbpUA9PkJZkxdI,5407744
174
+ siada/tools/coder/file_search/search.py,sha256=D-TTEnJtVT7C7qaPgpcHW3f4DgTRm9_ms2_rWzN9J7A,16179
175
+ siada/tools/coder/file_search/setup_package.py,sha256=N5EhTmMX53eCwimlSoJdBO0RLucxyednoFbknvpkOng,3854
176
+ siada/tools/coder/file_search/test_search.py,sha256=eqYpKq26rSJUhCFlRNKyFE-n67DzDRMUeXqolxTNWyc,4369
177
+ siada/tools/coder/files.py,sha256=qzHNAgWUuy4MWVFVS_seRID9oB3ZoArwVmlU9xoge3o,5220
178
+ siada/tools/coder/fix_attempt_completion.py,sha256=jbXhiQnMhCdoW_vLczf7EGxf7R_JNShUQfB37alg3qU,2200
179
+ siada/tools/coder/issue_review_completion.py,sha256=nzY8cf8FVJ93lxoGjK1_26VKpRZTZ6I6Mdw3hegh2Nw,1355
180
+ siada/tools/coder/observation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
181
+ siada/tools/coder/observation/error.py,sha256=CuKAhZlja96g6gfk5WvLwxoKQ_4JIegNCQhYnsq-8V8,559
182
+ siada/tools/coder/observation/file_observation.py,sha256=Y66GOmOfYtG55pCdRYQoOaC5fWEsvBlYav92En2sDtQ,8623
183
+ siada/tools/coder/observation/observation.py,sha256=85XrZLe_3tvl4H_jGV_0pLkwnGaiwUxzUS5wO6J0vuQ,1333
184
+ siada/tools/coder/repo_map/__init__.py,sha256=5R4wi48BGwkNUZ1WeU8QYWJbS6MUvu68ruuCAnDfUqM,3907
185
+ siada/tools/coder/repo_map/dump.py,sha256=-naWnGTc0-lAe_93WxBTpunPRfzNlUK7Q5zgXOprHfA,653
186
+ siada/tools/coder/repo_map/io.py,sha256=1vdnMQT1o8Dv_ySOYQW6vEkxLNjArd3Ig1ImzF6Srnc,6520
187
+ siada/tools/coder/repo_map/repo_map.py,sha256=uI7TO3K0DqEtQZqI_aeejpVUwSphFkPvDZ67TC5xeMA,28780
188
+ siada/tools/coder/repo_map/special.py,sha256=OhsBWWM-DWwjWbi6kE7EqR4CiUfyJ6qJuCgcmywZSAc,4415
189
+ siada/tools/coder/repo_map/token_counter.py,sha256=Gc_ylxIt7atCWD-QOHmb7MHrsQqSRhtP-rlmpjdQN3M,5043
190
+ siada/tools/coder/repo_map/waiting.py,sha256=LOJ8fMoQHgJDFs97GtVYXRarUq6LSbtS8GuwWgxUolM,7641
191
+ siada/tools/coder/reproduce_completion.py,sha256=0Lj5KiYPIsXsAk0Emp-J5rE2wqrB3Loj8_S9K-xSd1M,1739
192
+ siada/tools/coder/run_cmd.py,sha256=VI6fH-vulXKz8ILy-VbUoBhZgeUKUNKy1fIXLXolyPc,2523
193
+ siada/tools/coder/test_completion.py,sha256=GUWrGDHNp9GkZF4bCSIjeuEDtDiP9X9Fm_gKu5WurVg,1166
194
+ siada/tools/coder/tool_docs.py,sha256=XaVZowihvSXh4ylHm-z7ob5xHXwPluDzh0hTmcRC8qw,3255
195
+ siada/tools/compression_tool.py,sha256=87PUHBq_8pxdXqvO_9TgfDeMkoLWQNa3NsUA9yKZykM,9399
196
+ siada/tools/read_many_files/README.md,sha256=NO1Z755PUiWIzvw_Xlj2DdIX0srVNLFKW7u0m1FCdnY,5602
197
+ siada/tools/read_many_files/__init__.py,sha256=Vky9W020Kg7gVHjvh3viGnJ0NRMrsIGdVdUX3vyqlP8,464
198
+ siada/tools/read_many_files/file_processor.py,sha256=jpkRaLYInRNg_RqIAGg49X7e_Xo3DKiw8kwOpKUmV84,17165
199
+ siada/tools/read_many_files/filters.py,sha256=wKKlJqpTBh3HkGMrYeDMyzSuuOBHfzPuTWdOhcThnhA,11276
200
+ siada/tools/read_many_files/formatters.py,sha256=3PlKkL-cEt3VHYyzbuOjQ9y4FKJOir1tp_t6GDLwy6U,7230
201
+ siada/tools/read_many_files/models.py,sha256=ey7BrjZRzo9oPtLsDcMYbVTjDS4UIhAi9QHkhl3YLr8,4727
202
+ siada/tools/read_many_files_tool.py,sha256=qW2_Ann87zRIJyiE10YUN1-bKPfgz2kWRvIkx7sYt9g,8380
203
+ siada/tools/tool_call_format/__init__.py,sha256=iEIosZ2birZ_DrPYEL1EY17vNZG_HVLj__MfiC2KIQA,1454
204
+ siada/tools/tool_call_format/file_to_language.py,sha256=rf0HWTX_5qHJK1nt3WRbF7yINzSNrfYxUnm6RLcLsWE,6029
205
+ siada/tools/tool_call_format/formatter_factory.py,sha256=UUIQsFO0YUaLIv_w5Yqz3AUfW9810jB3otzHyu8Vd48,2368
206
+ siada/tools/tool_call_format/formatters.py,sha256=UFEJoR4Fq5Lfz-Xr-khI5fy0WCWIGwebeehP4YV71ME,10091
207
+ siada/tools/tool_call_format/tool_call_formatter.py,sha256=q9-be34GGKDZsanvLrAkJjf2I-vF7JuT2YA952m3neU,1290
208
+ siada/tools/web/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
209
+ siada/tools/web/web_crawl.py,sha256=TThVceQfD6eamEevpXOykI3TxR8BZm2_WvCVV3Jj1i8,8019
210
+ siada/utils.py,sha256=Rh_wSdxP-MuZEis2oUTtlyPm9J8uLAiFFIeKOVLIHNg,5762
211
+ siada_cli-0.0.1.dist-info/LICENSE,sha256=Z9nFu3LjBzkpZWHfacai9M-dwg-8hFl7VDS6xnKbeuY,11365
212
+ siada_cli-0.0.1.dist-info/METADATA,sha256=__sINYkuKiugXdXyM7KIo2IzsZE_WjxZ4x5a8xlCRMQ,13939
213
+ siada_cli-0.0.1.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
214
+ siada_cli-0.0.1.dist-info/entry_points.txt,sha256=59frdLFezwOcg58dPaQZBuA_XtMt8ZtP6uyiJgSyrbI,60
215
+ siada_cli-0.0.1.dist-info/RECORD,,