agentic-python-coder 2.3.0__tar.gz → 3.0.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/.gitignore +2 -3
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/PKG-INFO +18 -22
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/README.md +11 -10
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/prompts/system.md +12 -6
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/prompts/system_todo.md +12 -6
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/__init__.py +17 -2
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/agent.py +172 -151
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/examples/cpmpy/cpmpy.md +12 -3
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/llm.py +42 -35
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/mcp_server.py +7 -2
- agentic_python_coder-3.0.0/coder/src/agentic_python_coder/models/gemini3pro.json +8 -0
- agentic_python_coder-2.3.0/coder/src/agentic_python_coder/models/gpt5.json → agentic_python_coder-3.0.0/coder/src/agentic_python_coder/models/gpt52.json +2 -2
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/runner.py +82 -5
- agentic_python_coder-3.0.0/coder/src/agentic_python_coder/tools.py +350 -0
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/pyproject.toml +8 -15
- agentic_python_coder-2.3.0/coder/src/agentic_python_coder/tools.py +0 -231
- agentic_python_coder-2.3.0/coder/tests/test_kernel.py +0 -193
- agentic_python_coder-2.3.0/coder/tests/test_library_api.py +0 -159
- agentic_python_coder-2.3.0/coder/tests/test_mcp_server.py +0 -416
- agentic_python_coder-2.3.0/coder/tests/test_todo_flag_integration.py +0 -128
- agentic_python_coder-2.3.0/coder/tests/test_todo_tool_availability.py +0 -51
- agentic_python_coder-2.3.0/examples/clingo/README.md +0 -81
- agentic_python_coder-2.3.0/examples/clingo/clingo.md +0 -1220
- agentic_python_coder-2.3.0/examples/clingo/sample_tasks/bird_reasoning.md +0 -49
- agentic_python_coder-2.3.0/examples/clingo/sample_tasks/diagnosis.md +0 -57
- agentic_python_coder-2.3.0/examples/clingo/sample_tasks/simple_coloring.md +0 -26
- agentic_python_coder-2.3.0/examples/clingo/sample_tasks/stable_marriage.md +0 -26
- agentic_python_coder-2.3.0/examples/clingo/sample_tasks/sudoku_mini.md +0 -28
- agentic_python_coder-2.3.0/examples/cpmpy/README.md +0 -69
- agentic_python_coder-2.3.0/examples/cpmpy/cpmpy.md +0 -46
- agentic_python_coder-2.3.0/examples/cpmpy/sample_problems/magic_square.md +0 -46
- agentic_python_coder-2.3.0/examples/cpmpy/sample_problems/n_queens.md +0 -36
- agentic_python_coder-2.3.0/examples/regex/README.md +0 -66
- agentic_python_coder-2.3.0/examples/regex/regex.md +0 -114
- agentic_python_coder-2.3.0/examples/regex/sample_tasks/email_extraction.md +0 -31
- agentic_python_coder-2.3.0/examples/regex/sample_tasks/phone_validation.md +0 -34
- agentic_python_coder-2.3.0/examples/regex/sample_tasks/test_email/email_extractor.py +0 -77
- agentic_python_coder-2.3.0/examples/regex/sample_tasks/test_email/extracted_emails.txt +0 -7
- agentic_python_coder-2.3.0/examples/regex/sample_tasks/test_email/text.txt +0 -1
- agentic_python_coder-2.3.0/examples/regex/sample_tasks/url_parsing.md +0 -62
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/LICENSE +0 -0
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/.gitignore +0 -0
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/cli.py +0 -0
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/examples/__init__.py +0 -0
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/examples/clingo/README.md +0 -0
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/examples/clingo/clingo.md +0 -0
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/examples/clingo/sample_tasks/bird_reasoning.md +0 -0
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/examples/clingo/sample_tasks/diagnosis.md +0 -0
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/examples/clingo/sample_tasks/simple_coloring.md +0 -0
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/examples/clingo/sample_tasks/stable_marriage.md +0 -0
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/examples/clingo/sample_tasks/sudoku_mini.md +0 -0
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/examples/cpmpy/README.md +0 -0
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/examples/cpmpy/sample_tasks/magic_square.md +0 -0
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/examples/cpmpy/sample_tasks/n_queens.md +0 -0
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/examples/regex/README.md +0 -0
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/examples/regex/regex.md +0 -0
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/examples/regex/sample_tasks/email_extraction.md +0 -0
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/examples/regex/sample_tasks/phone_validation.md +0 -0
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/examples/regex/sample_tasks/url_parsing.md +0 -0
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/kernel.py +0 -0
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/models/deepseek31.json +0 -0
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/models/gemini25.json +0 -0
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/models/grok41.json +0 -0
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/models/opus45.json +0 -0
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/models/qwen3.json +0 -0
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/models/sonnet45.json +0 -0
- {agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/project_md.py +0 -0
|
@@ -152,8 +152,10 @@ cython_debug/
|
|
|
152
152
|
uv.lock
|
|
153
153
|
|
|
154
154
|
# Project specific
|
|
155
|
+
tests/
|
|
155
156
|
coder-examples/
|
|
156
157
|
CLAUDE-archive.md
|
|
158
|
+
EXPERTISE/
|
|
157
159
|
PROCESS_NOTES.md
|
|
158
160
|
conversation_log.json
|
|
159
161
|
coder_output.log
|
|
@@ -171,9 +173,6 @@ PAPER/
|
|
|
171
173
|
PAPER-ASP/
|
|
172
174
|
ZEBRA/
|
|
173
175
|
.mcp.json
|
|
174
|
-
examples/cpmpy/cpmpy_v*.md
|
|
175
|
-
examples/cpmpy/cpmpy.md.backup-*
|
|
176
|
-
examples/clingo/clingo_v*.md
|
|
177
176
|
|
|
178
177
|
# Test files and folders (root level only)
|
|
179
178
|
/test-*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: agentic-python-coder
|
|
3
|
-
Version:
|
|
3
|
+
Version: 3.0.0
|
|
4
4
|
Summary: A lightweight Python coding agent that writes, executes, and iterates on code through natural language instructions
|
|
5
5
|
Author: Stefan Szeider
|
|
6
6
|
License: Apache-2.0
|
|
@@ -14,21 +14,16 @@ Classifier: Programming Language :: Python :: 3.13
|
|
|
14
14
|
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
|
|
15
15
|
Classifier: Topic :: Software Development :: Code Generators
|
|
16
16
|
Requires-Python: <3.14,>=3.13
|
|
17
|
-
Requires-Dist: ipykernel>=7.
|
|
18
|
-
Requires-Dist: jupyter-client>=8.
|
|
19
|
-
Requires-Dist:
|
|
20
|
-
Requires-Dist:
|
|
21
|
-
Requires-Dist: langchain-experimental>=0.4.1
|
|
22
|
-
Requires-Dist: langchain-openai>=1.1.6
|
|
23
|
-
Requires-Dist: langchain>=1.2.0
|
|
24
|
-
Requires-Dist: langgraph>=1.0.5
|
|
25
|
-
Requires-Dist: mcp>=1.0.0
|
|
17
|
+
Requires-Dist: ipykernel>=7.1.0
|
|
18
|
+
Requires-Dist: jupyter-client>=8.8.0
|
|
19
|
+
Requires-Dist: mcp>=1.26.0
|
|
20
|
+
Requires-Dist: openai>=2.16.0
|
|
26
21
|
Requires-Dist: python-dotenv>=1.2.1
|
|
27
22
|
Requires-Dist: pyyaml>=6.0.3
|
|
28
|
-
Requires-Dist: rich>=14.
|
|
23
|
+
Requires-Dist: rich>=14.3.1
|
|
29
24
|
Provides-Extra: dev
|
|
30
25
|
Requires-Dist: mypy>=1.19.1; extra == 'dev'
|
|
31
|
-
Requires-Dist: ruff>=0.14.
|
|
26
|
+
Requires-Dist: ruff>=0.14.14; extra == 'dev'
|
|
32
27
|
Provides-Extra: test
|
|
33
28
|
Requires-Dist: pytest-asyncio>=1.3.0; extra == 'test'
|
|
34
29
|
Requires-Dist: pytest-cov>=7.0.0; extra == 'test'
|
|
@@ -42,11 +37,10 @@ Description-Content-Type: text/markdown
|
|
|
42
37
|
[](https://opensource.org/licenses/Apache-2.0)
|
|
43
38
|
[](https://modelcontextprotocol.io/)
|
|
44
39
|
[](https://github.com/astral-sh/uv)
|
|
45
|
-
[](https://github.com/langchain-ai/langgraph)
|
|
46
40
|
|
|
47
41
|
This package provides two utilities for Python code execution:
|
|
48
42
|
|
|
49
|
-
1. **coder** — An autonomous coding agent using the ReAct
|
|
43
|
+
1. **coder** — An autonomous coding agent using the ReAct pattern (CLI + Python library)
|
|
50
44
|
2. **ipython_mcp** — An MCP server that gives any MCP-compatible client (Claude Desktop, etc.) Python execution capability
|
|
51
45
|
|
|
52
46
|
Both share a persistent IPython kernel for stateful code execution.
|
|
@@ -157,8 +151,9 @@ coder --model opus45 "task" # Claude Opus 4.5
|
|
|
157
151
|
coder --model deepseek31 "task" # DeepSeek v3.1
|
|
158
152
|
coder --model grok41 "task" # X.AI Grok 4.1
|
|
159
153
|
coder --model qwen3 "task" # Qwen3 Coder
|
|
160
|
-
coder --model gemini25 "task"
|
|
161
|
-
coder --model
|
|
154
|
+
coder --model gemini25 "task" # Gemini Pro 2.5
|
|
155
|
+
coder --model gemini3pro "task" # Gemini 3 Pro Preview
|
|
156
|
+
coder --model gpt52 "task" # GPT-5.2
|
|
162
157
|
|
|
163
158
|
# Custom model (JSON file)
|
|
164
159
|
coder --model ./mymodel.json "task"
|
|
@@ -166,16 +161,17 @@ coder --model ./mymodel.json "task"
|
|
|
166
161
|
|
|
167
162
|
### Project Templates
|
|
168
163
|
|
|
169
|
-
Domain-specific templates improve results:
|
|
164
|
+
Domain-specific templates improve results. Bundled examples are available on GitHub at [`coder/src/agentic_python_coder/examples/`](coder/src/agentic_python_coder/examples/). Use `--init` to copy them locally:
|
|
170
165
|
|
|
171
166
|
```bash
|
|
172
|
-
#
|
|
167
|
+
# Copy all bundled examples to coder-examples/
|
|
173
168
|
coder --init
|
|
174
169
|
|
|
175
|
-
#
|
|
176
|
-
coder --
|
|
170
|
+
# Or copy a specific template
|
|
171
|
+
coder --init cpmpy
|
|
177
172
|
|
|
178
|
-
#
|
|
173
|
+
# Then use with your task
|
|
174
|
+
coder --with cpmpy --project coder-examples/cpmpy/cpmpy.md "Solve 8-queens"
|
|
179
175
|
coder --with clingo --project coder-examples/clingo/clingo.md "Model bird flight"
|
|
180
176
|
```
|
|
181
177
|
|
|
@@ -263,7 +259,7 @@ from agentic_python_coder import get_openrouter_llm, list_available_models
|
|
|
263
259
|
|
|
264
260
|
llm = get_openrouter_llm(model="sonnet45")
|
|
265
261
|
print(list_available_models())
|
|
266
|
-
# ['deepseek31', 'gemini25', '
|
|
262
|
+
# ['deepseek31', 'gemini25', 'gemini3pro', 'gpt52', 'grok41', 'opus45', 'qwen3', 'sonnet45']
|
|
267
263
|
```
|
|
268
264
|
|
|
269
265
|
---
|
|
@@ -4,11 +4,10 @@
|
|
|
4
4
|
[](https://opensource.org/licenses/Apache-2.0)
|
|
5
5
|
[](https://modelcontextprotocol.io/)
|
|
6
6
|
[](https://github.com/astral-sh/uv)
|
|
7
|
-
[](https://github.com/langchain-ai/langgraph)
|
|
8
7
|
|
|
9
8
|
This package provides two utilities for Python code execution:
|
|
10
9
|
|
|
11
|
-
1. **coder** — An autonomous coding agent using the ReAct
|
|
10
|
+
1. **coder** — An autonomous coding agent using the ReAct pattern (CLI + Python library)
|
|
12
11
|
2. **ipython_mcp** — An MCP server that gives any MCP-compatible client (Claude Desktop, etc.) Python execution capability
|
|
13
12
|
|
|
14
13
|
Both share a persistent IPython kernel for stateful code execution.
|
|
@@ -119,8 +118,9 @@ coder --model opus45 "task" # Claude Opus 4.5
|
|
|
119
118
|
coder --model deepseek31 "task" # DeepSeek v3.1
|
|
120
119
|
coder --model grok41 "task" # X.AI Grok 4.1
|
|
121
120
|
coder --model qwen3 "task" # Qwen3 Coder
|
|
122
|
-
coder --model gemini25 "task"
|
|
123
|
-
coder --model
|
|
121
|
+
coder --model gemini25 "task" # Gemini Pro 2.5
|
|
122
|
+
coder --model gemini3pro "task" # Gemini 3 Pro Preview
|
|
123
|
+
coder --model gpt52 "task" # GPT-5.2
|
|
124
124
|
|
|
125
125
|
# Custom model (JSON file)
|
|
126
126
|
coder --model ./mymodel.json "task"
|
|
@@ -128,16 +128,17 @@ coder --model ./mymodel.json "task"
|
|
|
128
128
|
|
|
129
129
|
### Project Templates
|
|
130
130
|
|
|
131
|
-
Domain-specific templates improve results:
|
|
131
|
+
Domain-specific templates improve results. Bundled examples are available on GitHub at [`coder/src/agentic_python_coder/examples/`](coder/src/agentic_python_coder/examples/). Use `--init` to copy them locally:
|
|
132
132
|
|
|
133
133
|
```bash
|
|
134
|
-
#
|
|
134
|
+
# Copy all bundled examples to coder-examples/
|
|
135
135
|
coder --init
|
|
136
136
|
|
|
137
|
-
#
|
|
138
|
-
coder --
|
|
137
|
+
# Or copy a specific template
|
|
138
|
+
coder --init cpmpy
|
|
139
139
|
|
|
140
|
-
#
|
|
140
|
+
# Then use with your task
|
|
141
|
+
coder --with cpmpy --project coder-examples/cpmpy/cpmpy.md "Solve 8-queens"
|
|
141
142
|
coder --with clingo --project coder-examples/clingo/clingo.md "Model bird flight"
|
|
142
143
|
```
|
|
143
144
|
|
|
@@ -225,7 +226,7 @@ from agentic_python_coder import get_openrouter_llm, list_available_models
|
|
|
225
226
|
|
|
226
227
|
llm = get_openrouter_llm(model="sonnet45")
|
|
227
228
|
print(list_available_models())
|
|
228
|
-
# ['deepseek31', 'gemini25', '
|
|
229
|
+
# ['deepseek31', 'gemini25', 'gemini3pro', 'gpt52', 'grok41', 'opus45', 'qwen3', 'sonnet45']
|
|
229
230
|
```
|
|
230
231
|
|
|
231
232
|
---
|
|
@@ -59,8 +59,13 @@ Build solutions incrementally:
|
|
|
59
59
|
## Important Guidelines
|
|
60
60
|
|
|
61
61
|
1. **Focus on the Task**: Complete what's requested, nothing more
|
|
62
|
-
2. **
|
|
63
|
-
|
|
62
|
+
2. **Verify Before Saving**: Before calling save_code, you MUST verify your solution:
|
|
63
|
+
- Execute the full script via python_exec and confirm it produces correct output
|
|
64
|
+
- For constraint/logic problems: write a verification function that checks the output against EVERY constraint in the problem statement using plain Python asserts, independent of your solver model
|
|
65
|
+
- For problems with a specific output format: assert that JSON keys, array shapes, and value ranges match the spec exactly
|
|
66
|
+
- For optimization: confirm optimality (e.g., re-solve with a stricter bound and confirm infeasibility)
|
|
67
|
+
- Do NOT trust that solver.solve()==True means your model is correct — your constraints may be wrong
|
|
68
|
+
3. **Save Once**: Call save_code only after verification passes
|
|
64
69
|
4. **Stop When Done**: Don't add features not requested
|
|
65
70
|
|
|
66
71
|
## Error Recovery
|
|
@@ -83,9 +88,10 @@ Before saving any code with save_code, your script MUST pass this checklist:
|
|
|
83
88
|
## Task Completion
|
|
84
89
|
|
|
85
90
|
When finishing:
|
|
86
|
-
1.
|
|
87
|
-
2.
|
|
88
|
-
3.
|
|
89
|
-
4.
|
|
91
|
+
1. Execute the full solution and verify it produces correct, complete output
|
|
92
|
+
2. For logic/constraint problems: run an independent verification that checks every constraint
|
|
93
|
+
3. Clean the code according to the **Code Cleaning Requirements** above
|
|
94
|
+
4. Call save_code with the complete, cleaned code
|
|
95
|
+
5. STOP - do not continue unless asked
|
|
90
96
|
|
|
91
97
|
Your goal is efficient, focused problem-solving.
|
|
@@ -76,8 +76,13 @@ Build solutions incrementally:
|
|
|
76
76
|
|
|
77
77
|
1. **Todo List is Mandatory**: ALWAYS use todo_write after understanding the problem
|
|
78
78
|
2. **Focus on the Task**: Complete what's requested, nothing more
|
|
79
|
-
3. **
|
|
80
|
-
|
|
79
|
+
3. **Verify Before Saving**: Before calling save_code, you MUST verify your solution:
|
|
80
|
+
- Execute the full script via python_exec and confirm it produces correct output
|
|
81
|
+
- For constraint/logic problems: write a verification function that checks the output against EVERY constraint in the problem statement using plain Python asserts, independent of your solver model
|
|
82
|
+
- For problems with a specific output format: assert that JSON keys, array shapes, and value ranges match the spec exactly
|
|
83
|
+
- For optimization: confirm optimality (e.g., re-solve with a stricter bound and confirm infeasibility)
|
|
84
|
+
- Do NOT trust that solver.solve()==True means your model is correct — your constraints may be wrong
|
|
85
|
+
4. **Save Once**: Call save_code only after verification passes
|
|
81
86
|
5. **Stop When Done**: Don't add features not requested
|
|
82
87
|
|
|
83
88
|
## Error Recovery
|
|
@@ -101,10 +106,11 @@ Before saving any code with save_code, your script MUST pass this checklist:
|
|
|
101
106
|
|
|
102
107
|
When finishing (these should be your final todo items):
|
|
103
108
|
1. Ensure all todo items are marked as completed
|
|
104
|
-
2.
|
|
105
|
-
3.
|
|
106
|
-
4.
|
|
107
|
-
5.
|
|
109
|
+
2. Execute the full solution and verify it produces correct, complete output
|
|
110
|
+
3. For logic/constraint problems: run an independent verification that checks every constraint
|
|
111
|
+
4. Clean the code according to the **Code Cleaning Requirements** above
|
|
112
|
+
5. Call save_code with the complete, cleaned code (final todo item)
|
|
113
|
+
6. STOP - do not continue unless asked
|
|
108
114
|
|
|
109
115
|
Note: Your todo list should show a clear progression from planning through completion.
|
|
110
116
|
|
{agentic_python_coder-2.3.0 → agentic_python_coder-3.0.0}/coder/src/agentic_python_coder/__init__.py
RENAMED
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
"""Python Coding Agent - A minimal coding assistant using
|
|
1
|
+
"""Python Coding Agent - A minimal coding assistant using direct OpenAI API and OpenRouter."""
|
|
2
2
|
|
|
3
|
-
__version__ = "
|
|
3
|
+
__version__ = "3.0.0"
|
|
4
4
|
|
|
5
5
|
# High-level API (recommended for most users)
|
|
6
6
|
from agentic_python_coder.runner import solve_task
|
|
7
7
|
|
|
8
8
|
# Lower-level API (for custom workflows)
|
|
9
9
|
from agentic_python_coder.agent import (
|
|
10
|
+
CodingAgent,
|
|
10
11
|
create_coding_agent,
|
|
11
12
|
run_agent,
|
|
12
13
|
get_final_response,
|
|
@@ -15,12 +16,20 @@ from agentic_python_coder.agent import (
|
|
|
15
16
|
|
|
16
17
|
# LLM utilities
|
|
17
18
|
from agentic_python_coder.llm import (
|
|
19
|
+
LLMConfig,
|
|
18
20
|
get_openrouter_llm,
|
|
19
21
|
load_model_config,
|
|
20
22
|
list_available_models,
|
|
21
23
|
DEFAULT_MODEL,
|
|
22
24
|
)
|
|
23
25
|
|
|
26
|
+
# Tool system
|
|
27
|
+
from agentic_python_coder.tools import (
|
|
28
|
+
Tool,
|
|
29
|
+
ToolRegistry,
|
|
30
|
+
create_tool_registry,
|
|
31
|
+
)
|
|
32
|
+
|
|
24
33
|
# Kernel management (multi-kernel API)
|
|
25
34
|
from agentic_python_coder.kernel import (
|
|
26
35
|
# Core functions
|
|
@@ -48,15 +57,21 @@ __all__ = [
|
|
|
48
57
|
# High-level
|
|
49
58
|
"solve_task",
|
|
50
59
|
# Low-level agent
|
|
60
|
+
"CodingAgent",
|
|
51
61
|
"create_coding_agent",
|
|
52
62
|
"run_agent",
|
|
53
63
|
"get_final_response",
|
|
54
64
|
"DEFAULT_STEP_LIMIT",
|
|
55
65
|
# LLM
|
|
66
|
+
"LLMConfig",
|
|
56
67
|
"get_openrouter_llm",
|
|
57
68
|
"load_model_config",
|
|
58
69
|
"list_available_models",
|
|
59
70
|
"DEFAULT_MODEL",
|
|
71
|
+
# Tool system
|
|
72
|
+
"Tool",
|
|
73
|
+
"ToolRegistry",
|
|
74
|
+
"create_tool_registry",
|
|
60
75
|
# Kernel management
|
|
61
76
|
"create_kernel",
|
|
62
77
|
"execute_in_kernel",
|