abstractcode 0.1.0__py3-none-any.whl → 0.2.0__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.
- abstractcode/__init__.py +6 -37
- abstractcode/cli.py +110 -0
- abstractcode/fullscreen_ui.py +656 -0
- abstractcode/input_handler.py +81 -0
- abstractcode/react_shell.py +1204 -0
- {abstractcode-0.1.0.dist-info → abstractcode-0.2.0.dist-info}/METADATA +51 -5
- abstractcode-0.2.0.dist-info/RECORD +11 -0
- abstractcode-0.1.0.dist-info/RECORD +0 -7
- {abstractcode-0.1.0.dist-info → abstractcode-0.2.0.dist-info}/WHEEL +0 -0
- {abstractcode-0.1.0.dist-info → abstractcode-0.2.0.dist-info}/entry_points.txt +0 -0
- {abstractcode-0.1.0.dist-info → abstractcode-0.2.0.dist-info}/licenses/LICENSE +0 -0
- {abstractcode-0.1.0.dist-info → abstractcode-0.2.0.dist-info}/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: abstractcode
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.2.0
|
|
4
4
|
Summary: A clean terminal CLI for multi-agent agentic coding
|
|
5
5
|
Author-email: Laurent-Philippe Albou <contact@abstractcore.ai>
|
|
6
6
|
Maintainer-email: Laurent-Philippe Albou <contact@abstractcore.ai>
|
|
@@ -25,6 +25,7 @@ Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
|
|
|
25
25
|
Requires-Python: >=3.8
|
|
26
26
|
Description-Content-Type: text/markdown
|
|
27
27
|
License-File: LICENSE
|
|
28
|
+
Requires-Dist: prompt_toolkit>=3.0.0
|
|
28
29
|
Provides-Extra: dev
|
|
29
30
|
Requires-Dist: pytest>=7.0.0; extra == "dev"
|
|
30
31
|
Requires-Dist: pytest-cov>=4.0.0; extra == "dev"
|
|
@@ -41,13 +42,15 @@ Dynamic: license-file
|
|
|
41
42
|
|
|
42
43
|
---
|
|
43
44
|
|
|
44
|
-
##
|
|
45
|
+
## Status
|
|
45
46
|
|
|
46
|
-
AbstractCode is
|
|
47
|
+
AbstractCode is under active development. A minimal interactive shell exists to support manual testing of AbstractAgent workflows.
|
|
48
|
+
|
|
49
|
+
Note: the PyPI release may lag behind the monorepo. For the latest development version, install from source.
|
|
47
50
|
|
|
48
51
|
## What is AbstractCode?
|
|
49
52
|
|
|
50
|
-
AbstractCode is a clean terminal CLI for multi-agent agentic coding, similar to Claude Code, Codex, and Gemini CLI. It leverages the Abstract Framework ecosystem to provide seamless AI-powered coding assistance directly in your terminal.
|
|
53
|
+
AbstractCode is a clean terminal CLI for multi-agent agentic coding, similar to Claude Code, Codex, and Gemini CLI. It leverages the powerful Abstract Framework ecosystem to provide seamless AI-powered coding assistance directly in your terminal.
|
|
51
54
|
|
|
52
55
|
## The Abstract Framework
|
|
53
56
|
|
|
@@ -75,7 +78,34 @@ pip install abstractcode
|
|
|
75
78
|
## Quick Start
|
|
76
79
|
|
|
77
80
|
```bash
|
|
78
|
-
#
|
|
81
|
+
# Show options
|
|
82
|
+
abstractcode --help
|
|
83
|
+
|
|
84
|
+
# Durable resume is enabled by default (state file: ~/.abstractcode/state.json)
|
|
85
|
+
# Override with:
|
|
86
|
+
ABSTRACTCODE_STATE_FILE=.abstractcode.state.json abstractcode
|
|
87
|
+
|
|
88
|
+
# Or disable persistence (in-memory only; cannot resume after quitting)
|
|
89
|
+
abstractcode --no-state
|
|
90
|
+
|
|
91
|
+
# Auto-approve tool calls (unsafe; bypasses interactive approvals)
|
|
92
|
+
abstractcode --auto-approve
|
|
93
|
+
|
|
94
|
+
# Limit agent iterations per task (default: 20)
|
|
95
|
+
abstractcode --max-iterations 25
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
Notes:
|
|
99
|
+
- Run resume state is stored next to the state file in `*.d/`.
|
|
100
|
+
- Conversation history is stored in the run state (`RunState.vars["context"]["messages"]`) inside `*.d/`, and AbstractCode keeps the state file pointing at the most recent run so restarts can reload context.
|
|
101
|
+
- In the interactive shell, commands are slash-prefixed (e.g. `/help`, `/status`, `/history`, `/task ...`).
|
|
102
|
+
|
|
103
|
+
## Development (Monorepo)
|
|
104
|
+
|
|
105
|
+
From the monorepo root:
|
|
106
|
+
|
|
107
|
+
```bash
|
|
108
|
+
pip install -e ./abstractcore -e ./abstractruntime -e ./abstractagent -e ./abstractcode
|
|
79
109
|
abstractcode --help
|
|
80
110
|
```
|
|
81
111
|
|
|
@@ -112,3 +142,19 @@ MIT License - see LICENSE file for details.
|
|
|
112
142
|
|
|
113
143
|
**AbstractCode** - Multi-agent agentic coding in your terminal, powered by the Abstract Framework.
|
|
114
144
|
|
|
145
|
+
## Default Tools
|
|
146
|
+
|
|
147
|
+
AbstractCode provides a curated set of 8 tools for coding tasks:
|
|
148
|
+
|
|
149
|
+
| Tool | Description |
|
|
150
|
+
|------|-------------|
|
|
151
|
+
| `list_files` | Find and list files using glob patterns (case-insensitive) |
|
|
152
|
+
| `search_files` | Search for text patterns inside files using regex |
|
|
153
|
+
| `read_file` | Read file contents with optional line range |
|
|
154
|
+
| `write_file` | Write content to files, creating directories as needed |
|
|
155
|
+
| `edit_file` | Edit files by replacing text patterns (supports regex, line ranges, preview mode) |
|
|
156
|
+
| `execute_command` | Execute shell commands with security controls |
|
|
157
|
+
| `web_search` | Search the web via DuckDuckGo (no API key required) |
|
|
158
|
+
| `self_improve` | Log improvement suggestions for later review |
|
|
159
|
+
|
|
160
|
+
Additional tools are available via AbstractAgent for specialized use cases (execute_python, fetch_url).
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
abstractcode/__init__.py,sha256=pHrawn8KtpITMmArbfOQBm1WrGKL7qMAr0cu81ianDU,658
|
|
2
|
+
abstractcode/cli.py,sha256=oW9S7eZlsIFP2yF9TtlTi6vaUF120uqanLnsntoSSL0,3438
|
|
3
|
+
abstractcode/fullscreen_ui.py,sha256=-7xOhz657TXjZvcQeCzJ3RfzyaEuTzXI6e5uge7U0V4,23951
|
|
4
|
+
abstractcode/input_handler.py,sha256=W2ImW4Yr3HMMD5SNPZOZJendVL-CRdYR5idXTWroxAY,2240
|
|
5
|
+
abstractcode/react_shell.py,sha256=fOLiTJje3IeJ0LjAyye_vsN6m7CLNx9R6skDGXN2258,50699
|
|
6
|
+
abstractcode-0.2.0.dist-info/licenses/LICENSE,sha256=f8z-PbFM_xH0eqLsha8_nEg1jbm1eVtC2NNjtXhtuCo,1080
|
|
7
|
+
abstractcode-0.2.0.dist-info/METADATA,sha256=38oM_FIIMKz2jpCxKOg4fA_vnLv8OD3v2zDUtmC_TME,5985
|
|
8
|
+
abstractcode-0.2.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
9
|
+
abstractcode-0.2.0.dist-info/entry_points.txt,sha256=M4AOKb4h2vKWy5OMg-czeJE2aXunVKlljUPN8BUtwoE,51
|
|
10
|
+
abstractcode-0.2.0.dist-info/top_level.txt,sha256=n9Hfv6cnmL55HoxXsA3V1YLbQxYAr58-UMLbdr-FCNw,13
|
|
11
|
+
abstractcode-0.2.0.dist-info/RECORD,,
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
abstractcode/__init__.py,sha256=oan-Wsnr4B1W36uWXN2Qk7YzcnGdi8QlXuQePHSwI4Y,1433
|
|
2
|
-
abstractcode-0.1.0.dist-info/licenses/LICENSE,sha256=f8z-PbFM_xH0eqLsha8_nEg1jbm1eVtC2NNjtXhtuCo,1080
|
|
3
|
-
abstractcode-0.1.0.dist-info/METADATA,sha256=31HEIv-JD2M9wK5lFYoBziYCVmIrqLwcRiWdimWdCCo,4011
|
|
4
|
-
abstractcode-0.1.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
5
|
-
abstractcode-0.1.0.dist-info/entry_points.txt,sha256=M4AOKb4h2vKWy5OMg-czeJE2aXunVKlljUPN8BUtwoE,51
|
|
6
|
-
abstractcode-0.1.0.dist-info/top_level.txt,sha256=n9Hfv6cnmL55HoxXsA3V1YLbQxYAr58-UMLbdr-FCNw,13
|
|
7
|
-
abstractcode-0.1.0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|