seedcode-cli 6.1.5__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.
- seedcode_cli-6.1.5/.gitignore +64 -0
- seedcode_cli-6.1.5/LICENSE +21 -0
- seedcode_cli-6.1.5/PKG-INFO +368 -0
- seedcode_cli-6.1.5/README.md +321 -0
- seedcode_cli-6.1.5/pyproject.toml +91 -0
- seedcode_cli-6.1.5/scripts/windows/README.md +134 -0
- seedcode_cli-6.1.5/seedcode/__init__.py +14 -0
- seedcode_cli-6.1.5/seedcode/__main__.py +12 -0
- seedcode_cli-6.1.5/seedcode/app.py +508 -0
- seedcode_cli-6.1.5/seedcode/apps/__init__.py +32 -0
- seedcode_cli-6.1.5/seedcode/apps/discovery.py +241 -0
- seedcode_cli-6.1.5/seedcode/apps/installer.py +164 -0
- seedcode_cli-6.1.5/seedcode/apps/launcher.py +156 -0
- seedcode_cli-6.1.5/seedcode/apps/verifier.py +119 -0
- seedcode_cli-6.1.5/seedcode/assets/logo.txt +15 -0
- seedcode_cli-6.1.5/seedcode/cli.py +95 -0
- seedcode_cli-6.1.5/seedcode/commands/__init__.py +81 -0
- seedcode_cli-6.1.5/seedcode/commands/about.py +34 -0
- seedcode_cli-6.1.5/seedcode/commands/agent.py +94 -0
- seedcode_cli-6.1.5/seedcode/commands/assist.py +201 -0
- seedcode_cli-6.1.5/seedcode/commands/clear.py +20 -0
- seedcode_cli-6.1.5/seedcode/commands/desktop.py +104 -0
- seedcode_cli-6.1.5/seedcode/commands/doctor.py +152 -0
- seedcode_cli-6.1.5/seedcode/commands/help.py +61 -0
- seedcode_cli-6.1.5/seedcode/commands/history.py +365 -0
- seedcode_cli-6.1.5/seedcode/commands/palette.py +100 -0
- seedcode_cli-6.1.5/seedcode/commands/provider.py +451 -0
- seedcode_cli-6.1.5/seedcode/commands/theme.py +76 -0
- seedcode_cli-6.1.5/seedcode/computer/__init__.py +98 -0
- seedcode_cli-6.1.5/seedcode/computer/browser.py +276 -0
- seedcode_cli-6.1.5/seedcode/computer/browser_cdp.py +567 -0
- seedcode_cli-6.1.5/seedcode/computer/browser_engine.py +546 -0
- seedcode_cli-6.1.5/seedcode/computer/browser_extract.py +301 -0
- seedcode_cli-6.1.5/seedcode/computer/browser_popups.py +329 -0
- seedcode_cli-6.1.5/seedcode/computer/browser_selenium.py +209 -0
- seedcode_cli-6.1.5/seedcode/computer/browser_skills.py +245 -0
- seedcode_cli-6.1.5/seedcode/computer/catalog.py +200 -0
- seedcode_cli-6.1.5/seedcode/computer/controller.py +324 -0
- seedcode_cli-6.1.5/seedcode/computer/dispatcher.py +272 -0
- seedcode_cli-6.1.5/seedcode/computer/dpi.py +185 -0
- seedcode_cli-6.1.5/seedcode/computer/engine.py +105 -0
- seedcode_cli-6.1.5/seedcode/computer/keyboard.py +101 -0
- seedcode_cli-6.1.5/seedcode/computer/logbook.py +104 -0
- seedcode_cli-6.1.5/seedcode/computer/mouse.py +48 -0
- seedcode_cli-6.1.5/seedcode/computer/ocr.py +213 -0
- seedcode_cli-6.1.5/seedcode/computer/operator_skills.py +577 -0
- seedcode_cli-6.1.5/seedcode/computer/permissions.py +203 -0
- seedcode_cli-6.1.5/seedcode/computer/recovery.py +115 -0
- seedcode_cli-6.1.5/seedcode/computer/registry.py +107 -0
- seedcode_cli-6.1.5/seedcode/computer/resolver.py +434 -0
- seedcode_cli-6.1.5/seedcode/computer/screen.py +130 -0
- seedcode_cli-6.1.5/seedcode/computer/screen_state.py +412 -0
- seedcode_cli-6.1.5/seedcode/computer/selfguard.py +197 -0
- seedcode_cli-6.1.5/seedcode/computer/semantic.py +100 -0
- seedcode_cli-6.1.5/seedcode/computer/skills.py +139 -0
- seedcode_cli-6.1.5/seedcode/computer/state.py +199 -0
- seedcode_cli-6.1.5/seedcode/computer/verifier.py +177 -0
- seedcode_cli-6.1.5/seedcode/computer/vision.py +327 -0
- seedcode_cli-6.1.5/seedcode/computer/windows.py +217 -0
- seedcode_cli-6.1.5/seedcode/config/__init__.py +8 -0
- seedcode_cli-6.1.5/seedcode/config/defaults.py +22 -0
- seedcode_cli-6.1.5/seedcode/config/manager.py +62 -0
- seedcode_cli-6.1.5/seedcode/core/__init__.py +31 -0
- seedcode_cli-6.1.5/seedcode/core/agent.py +534 -0
- seedcode_cli-6.1.5/seedcode/core/chat.py +128 -0
- seedcode_cli-6.1.5/seedcode/core/client.py +9 -0
- seedcode_cli-6.1.5/seedcode/core/errors.py +199 -0
- seedcode_cli-6.1.5/seedcode/core/identity.py +66 -0
- seedcode_cli-6.1.5/seedcode/core/identity_store.py +119 -0
- seedcode_cli-6.1.5/seedcode/core/lifecycle.py +240 -0
- seedcode_cli-6.1.5/seedcode/core/limits.py +35 -0
- seedcode_cli-6.1.5/seedcode/core/models.py +347 -0
- seedcode_cli-6.1.5/seedcode/core/project.py +96 -0
- seedcode_cli-6.1.5/seedcode/core/providers/__init__.py +58 -0
- seedcode_cli-6.1.5/seedcode/core/providers/aerolink.py +324 -0
- seedcode_cli-6.1.5/seedcode/core/providers/base.py +230 -0
- seedcode_cli-6.1.5/seedcode/core/providers/freemodel.py +931 -0
- seedcode_cli-6.1.5/seedcode/core/providers/ollama.py +262 -0
- seedcode_cli-6.1.5/seedcode/core/providers/openrouter.py +393 -0
- seedcode_cli-6.1.5/seedcode/core/streaming.py +21 -0
- seedcode_cli-6.1.5/seedcode/memory/__init__.py +8 -0
- seedcode_cli-6.1.5/seedcode/memory/manager.py +47 -0
- seedcode_cli-6.1.5/seedcode/memory/storage.py +38 -0
- seedcode_cli-6.1.5/seedcode/memory/store.py +257 -0
- seedcode_cli-6.1.5/seedcode/tools/__init__.py +35 -0
- seedcode_cli-6.1.5/seedcode/tools/base.py +179 -0
- seedcode_cli-6.1.5/seedcode/tools/desktop.py +371 -0
- seedcode_cli-6.1.5/seedcode/tools/filesystem.py +309 -0
- seedcode_cli-6.1.5/seedcode/tools/git.py +72 -0
- seedcode_cli-6.1.5/seedcode/tools/patch.py +170 -0
- seedcode_cli-6.1.5/seedcode/tools/permissions.py +288 -0
- seedcode_cli-6.1.5/seedcode/tools/search.py +137 -0
- seedcode_cli-6.1.5/seedcode/tools/terminal.py +200 -0
- seedcode_cli-6.1.5/seedcode/tools/textio.py +59 -0
- seedcode_cli-6.1.5/seedcode/ui/__init__.py +164 -0
- seedcode_cli-6.1.5/seedcode/ui/badges.py +64 -0
- seedcode_cli-6.1.5/seedcode/ui/banner.py +78 -0
- seedcode_cli-6.1.5/seedcode/ui/dashboard.py +197 -0
- seedcode_cli-6.1.5/seedcode/ui/dialog.py +62 -0
- seedcode_cli-6.1.5/seedcode/ui/fuzzy.py +128 -0
- seedcode_cli-6.1.5/seedcode/ui/layout.py +54 -0
- seedcode_cli-6.1.5/seedcode/ui/menu.py +61 -0
- seedcode_cli-6.1.5/seedcode/ui/palette.py +40 -0
- seedcode_cli-6.1.5/seedcode/ui/progress.py +41 -0
- seedcode_cli-6.1.5/seedcode/ui/prompts.py +16 -0
- seedcode_cli-6.1.5/seedcode/ui/renderer.py +36 -0
- seedcode_cli-6.1.5/seedcode/ui/searchbox.py +70 -0
- seedcode_cli-6.1.5/seedcode/ui/selector.py +514 -0
- seedcode_cli-6.1.5/seedcode/ui/statusbar.py +38 -0
- seedcode_cli-6.1.5/seedcode/ui/textbox.py +61 -0
- seedcode_cli-6.1.5/seedcode/ui/theme.py +204 -0
- seedcode_cli-6.1.5/seedcode/ui/tree.py +91 -0
- seedcode_cli-6.1.5/seedcode/utils/__init__.py +22 -0
- seedcode_cli-6.1.5/seedcode/utils/helpers.py +97 -0
- seedcode_cli-6.1.5/seedcode/utils/logger.py +65 -0
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
# Python
|
|
2
|
+
__pycache__/
|
|
3
|
+
*.py[cod]
|
|
4
|
+
*.pyd
|
|
5
|
+
*.egg-info/
|
|
6
|
+
build/
|
|
7
|
+
dist/
|
|
8
|
+
.eggs/
|
|
9
|
+
.venv/
|
|
10
|
+
venv/
|
|
11
|
+
env/
|
|
12
|
+
test-env/
|
|
13
|
+
.pytest_cache/
|
|
14
|
+
.mypy_cache/
|
|
15
|
+
.ruff_cache/
|
|
16
|
+
.pytype/
|
|
17
|
+
.cache/
|
|
18
|
+
.coverage
|
|
19
|
+
coverage/
|
|
20
|
+
htmlcov/
|
|
21
|
+
*.spec
|
|
22
|
+
|
|
23
|
+
# Build / release outputs. Installers are published as GitHub Release
|
|
24
|
+
# attachments, never committed to source control.
|
|
25
|
+
/Info_for_ai_agents/
|
|
26
|
+
/Installer/
|
|
27
|
+
/build/
|
|
28
|
+
/dist/
|
|
29
|
+
/Release/
|
|
30
|
+
/release/
|
|
31
|
+
/archive/
|
|
32
|
+
/installed app/
|
|
33
|
+
*.exe
|
|
34
|
+
seedcode-cli-setup.exe
|
|
35
|
+
|
|
36
|
+
# Volatile outputs of scripts/windows/build_assets.py (regenerated every
|
|
37
|
+
# build). The stable brand assets (seedcode.ico, wizard*.bmp) STAY committed:
|
|
38
|
+
# tests and manual ISCC compiles depend on them existing in the repo.
|
|
39
|
+
/assets/windows/version_info.txt
|
|
40
|
+
/assets/windows/preview.png
|
|
41
|
+
|
|
42
|
+
# Seed Code local state (never commit user secrets or history).
|
|
43
|
+
# Anchored to the repo root so the seedcode/config package is NOT ignored.
|
|
44
|
+
.seedcode/
|
|
45
|
+
/config/
|
|
46
|
+
/history/
|
|
47
|
+
/data/
|
|
48
|
+
*.log
|
|
49
|
+
|
|
50
|
+
# OS / editor / agent state
|
|
51
|
+
.DS_Store
|
|
52
|
+
Thumbs.db
|
|
53
|
+
Desktop.ini
|
|
54
|
+
.idea/
|
|
55
|
+
.vscode/
|
|
56
|
+
.claude/
|
|
57
|
+
|
|
58
|
+
# Scratch / temporary artifacts
|
|
59
|
+
*.tmp
|
|
60
|
+
*.bak
|
|
61
|
+
*.orig
|
|
62
|
+
*.rej
|
|
63
|
+
*.crdownload
|
|
64
|
+
opencode.txt
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Al shahriar sowan
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,368 @@
|
|
|
1
|
+
Metadata-Version: 2.5
|
|
2
|
+
Name: seedcode-cli
|
|
3
|
+
Version: 6.1.5
|
|
4
|
+
Summary: Seed Code — a premium terminal-based AI coding assistant. Plant ideas. Grow code.
|
|
5
|
+
Project-URL: Homepage, https://github.com/Alshahriar-07/seedcode-cli
|
|
6
|
+
Project-URL: Repository, https://github.com/Alshahriar-07/seedcode-cli
|
|
7
|
+
Project-URL: Documentation, https://github.com/Alshahriar-07/seedcode-cli#readme
|
|
8
|
+
Project-URL: Issues, https://github.com/Alshahriar-07/seedcode-cli/issues
|
|
9
|
+
Project-URL: Changelog, https://github.com/Alshahriar-07/seedcode-cli/releases
|
|
10
|
+
Author-email: Al Shahriar Sowan <github@eagox.studio>
|
|
11
|
+
License-Expression: MIT
|
|
12
|
+
License-File: LICENSE
|
|
13
|
+
Keywords: agent,ai,chat,cli,coding-assistant,ollama,seedcode,terminal
|
|
14
|
+
Classifier: Development Status :: 5 - Production/Stable
|
|
15
|
+
Classifier: Environment :: Console
|
|
16
|
+
Classifier: Intended Audience :: Developers
|
|
17
|
+
Classifier: Operating System :: OS Independent
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
20
|
+
Classifier: Topic :: Software Development
|
|
21
|
+
Classifier: Topic :: Terminals
|
|
22
|
+
Requires-Python: >=3.12
|
|
23
|
+
Requires-Dist: httpx>=0.27.0
|
|
24
|
+
Requires-Dist: openai>=1.40.0
|
|
25
|
+
Requires-Dist: prompt-toolkit>=3.0.43
|
|
26
|
+
Requires-Dist: pydantic>=2.6.0
|
|
27
|
+
Requires-Dist: rich>=13.7.0
|
|
28
|
+
Provides-Extra: browser
|
|
29
|
+
Requires-Dist: selenium>=4.18.0; extra == 'browser'
|
|
30
|
+
Requires-Dist: webdriver-manager>=4.0.1; extra == 'browser'
|
|
31
|
+
Provides-Extra: desktop
|
|
32
|
+
Requires-Dist: mss>=9.0.1; extra == 'desktop'
|
|
33
|
+
Requires-Dist: opencv-python>=4.9.0; extra == 'desktop'
|
|
34
|
+
Requires-Dist: pillow>=10.0.0; extra == 'desktop'
|
|
35
|
+
Requires-Dist: psutil>=5.9.0; extra == 'desktop'
|
|
36
|
+
Requires-Dist: pyautogui>=0.9.54; extra == 'desktop'
|
|
37
|
+
Requires-Dist: pygetwindow>=0.0.9; extra == 'desktop'
|
|
38
|
+
Requires-Dist: pytesseract>=0.3.10; extra == 'desktop'
|
|
39
|
+
Requires-Dist: uiautomation>=2.0.18; (sys_platform == 'win32') and extra == 'desktop'
|
|
40
|
+
Provides-Extra: dev
|
|
41
|
+
Requires-Dist: pytest-mock>=3.12.0; extra == 'dev'
|
|
42
|
+
Requires-Dist: pytest>=8.0.0; extra == 'dev'
|
|
43
|
+
Provides-Extra: vision
|
|
44
|
+
Requires-Dist: opencv-python>=4.9.0; extra == 'vision'
|
|
45
|
+
Requires-Dist: pytesseract>=0.3.10; extra == 'vision'
|
|
46
|
+
Description-Content-Type: text/markdown
|
|
47
|
+
|
|
48
|
+
# SeedCode CLI
|
|
49
|
+
|
|
50
|
+
> **Plant ideas. Grow code.**
|
|
51
|
+
|
|
52
|
+
SeedCode is a terminal-first AI coding assistant and desktop operator. It
|
|
53
|
+
combines streaming chat, project-aware coding tools, screen intelligence,
|
|
54
|
+
semantic UI actions, browser intelligence, and permission-gated computer
|
|
55
|
+
control in one focused workflow.
|
|
56
|
+
|
|
57
|
+
Use the model and provider that fit the task. Keep the work local when you
|
|
58
|
+
want to. Give the operator only the permissions it needs.
|
|
59
|
+
|
|
60
|
+
## Why SeedCode
|
|
61
|
+
|
|
62
|
+
- **One workflow for code and computer tasks** — move from a code question to
|
|
63
|
+
a project edit, window inspection, browser extraction, or desktop action
|
|
64
|
+
without changing tools.
|
|
65
|
+
- **Provider-independent identity** — change providers or models without
|
|
66
|
+
losing SeedCode's local identity, settings, or memory.
|
|
67
|
+
- **Permission-aware by design** — read, workspace, and full-access modes
|
|
68
|
+
make control boundaries visible before an action runs.
|
|
69
|
+
- **Windows-ready packaging** — the self-contained installer includes the
|
|
70
|
+
application runtime and preserves the SeedCode brand.
|
|
71
|
+
- **Recoverable operations** — lifecycle checks, self-guard protection,
|
|
72
|
+
bounded retries, verification, and structured error handling keep failures
|
|
73
|
+
explicit instead of silently repeating actions.
|
|
74
|
+
|
|
75
|
+
## Install
|
|
76
|
+
|
|
77
|
+
### Windows installer
|
|
78
|
+
|
|
79
|
+
Download the latest `seedcode-cli-setup.exe` from the
|
|
80
|
+
[Releases page](https://github.com/Alshahriar-07/seedcode-cli/releases).
|
|
81
|
+
The installer:
|
|
82
|
+
|
|
83
|
+
- installs a self-contained `seedcode.exe`;
|
|
84
|
+
- adds SeedCode to the system `PATH`;
|
|
85
|
+
- creates Start Menu shortcuts;
|
|
86
|
+
- optionally creates a desktop shortcut; and
|
|
87
|
+
- does not require Python on the target machine.
|
|
88
|
+
|
|
89
|
+
### PyPI
|
|
90
|
+
|
|
91
|
+
Requires **Python 3.12 or newer**:
|
|
92
|
+
|
|
93
|
+
```bash
|
|
94
|
+
python -m pip install seedcode-cli
|
|
95
|
+
seedcode
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
### WinGet
|
|
99
|
+
|
|
100
|
+
When the package is available in the Microsoft community repository:
|
|
101
|
+
|
|
102
|
+
```powershell
|
|
103
|
+
winget install SeedCode.CLI
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
The repository's manifests are in
|
|
107
|
+
[`winget/manifests/s/SeedCode/CLI/`](winget/manifests/s/SeedCode/CLI/).
|
|
108
|
+
|
|
109
|
+
## Quick start
|
|
110
|
+
|
|
111
|
+
Start the interactive application:
|
|
112
|
+
|
|
113
|
+
```bash
|
|
114
|
+
seedcode
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
The first-run flow helps you choose a provider, validate an API key, fetch
|
|
118
|
+
available models, and select a model. To check an installation without
|
|
119
|
+
starting the UI:
|
|
120
|
+
|
|
121
|
+
```bash
|
|
122
|
+
seedcode --version
|
|
123
|
+
seedcode --help
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
SeedCode supports:
|
|
127
|
+
|
|
128
|
+
| Provider | Best for |
|
|
129
|
+
| --- | --- |
|
|
130
|
+
| [OpenRouter](https://openrouter.ai) | A broad catalogue of free and paid models |
|
|
131
|
+
| FreeModel Claude | Claude-family models through FreeModel |
|
|
132
|
+
| FreeModel Codex | GPT/Codex models through FreeModel |
|
|
133
|
+
| [AeroLink](https://aerolink.lat) | Anthropic-compatible gateway access |
|
|
134
|
+
| [Ollama](https://ollama.com) | Local, key-free models |
|
|
135
|
+
|
|
136
|
+
API keys can be entered through the guided setup or supplied through
|
|
137
|
+
environment variables:
|
|
138
|
+
|
|
139
|
+
```bash
|
|
140
|
+
export OPENROUTER_API_KEY="sk-or-..."
|
|
141
|
+
export FREEMODEL_API_KEY="fe_oa_..."
|
|
142
|
+
export AEROLINK_API_KEY="..."
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
On Windows PowerShell, use `$env:OPENROUTER_API_KEY = "..."`.
|
|
146
|
+
|
|
147
|
+
## Operator capabilities
|
|
148
|
+
|
|
149
|
+
Assist Mode unifies AI reasoning with controlled computer actions. The
|
|
150
|
+
operator stack includes:
|
|
151
|
+
|
|
152
|
+
### Screen Intelligence Engine
|
|
153
|
+
|
|
154
|
+
- captures and inspects the current screen;
|
|
155
|
+
- resolves windows and controls through a detection ladder;
|
|
156
|
+
- combines accessibility metadata, geometry, OCR, and image refinement; and
|
|
157
|
+
- verifies the target before an action is committed.
|
|
158
|
+
|
|
159
|
+
### Semantic UI actions
|
|
160
|
+
|
|
161
|
+
Actions target the meaning of an element rather than a brittle coordinate.
|
|
162
|
+
The resolver can work with accessible names, roles, text, window context, and
|
|
163
|
+
visual evidence before dispatching keyboard or mouse input.
|
|
164
|
+
|
|
165
|
+
### Desktop application control
|
|
166
|
+
|
|
167
|
+
SeedCode can discover installed applications, inspect open windows, launch
|
|
168
|
+
known applications, and verify process/window state. Application installation
|
|
169
|
+
is permission-gated and uses the trusted `winget` path.
|
|
170
|
+
|
|
171
|
+
### Web Intelligence
|
|
172
|
+
|
|
173
|
+
The browser engine supports browser discovery, DevTools/CDP connectivity,
|
|
174
|
+
page extraction, pop-up handling, and browser-oriented operator skills. Web
|
|
175
|
+
extraction requires the existing DevTools/CDP browser connection; it does not
|
|
176
|
+
silently create an uncontrolled browser session.
|
|
177
|
+
|
|
178
|
+
### Memory and identity
|
|
179
|
+
|
|
180
|
+
- conversation history is saved locally;
|
|
181
|
+
- persistent memory can retain useful operator context;
|
|
182
|
+
- memory is stored per local SeedCode profile;
|
|
183
|
+
- identity remains stable when the active model or provider changes; and
|
|
184
|
+
- provider credentials remain isolated from one another.
|
|
185
|
+
|
|
186
|
+
## Assist Mode and permissions
|
|
187
|
+
|
|
188
|
+
Inside SeedCode, enable the operator with:
|
|
189
|
+
|
|
190
|
+
```text
|
|
191
|
+
/assist on
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
`/agent` and `/desktop` remain compatibility aliases. Inspect the current
|
|
195
|
+
boundary with:
|
|
196
|
+
|
|
197
|
+
```text
|
|
198
|
+
/permission
|
|
199
|
+
/computer
|
|
200
|
+
/tools
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
Permission modes:
|
|
204
|
+
|
|
205
|
+
| Mode | Behavior |
|
|
206
|
+
| --- | --- |
|
|
207
|
+
| `read_only` | Inspect files, screens, windows, and state without mutations |
|
|
208
|
+
| `workspace` | Allow approved changes inside the active workspace |
|
|
209
|
+
| `full_access` | Allow broader computer and filesystem actions after confirmation |
|
|
210
|
+
|
|
211
|
+
Use the narrowest mode that can complete the task. Mutating actions are
|
|
212
|
+
subject to permission checks, lifecycle state, verification, and retry
|
|
213
|
+
limits.
|
|
214
|
+
|
|
215
|
+
## Command reference
|
|
216
|
+
|
|
217
|
+
| Command | Purpose |
|
|
218
|
+
| --- | --- |
|
|
219
|
+
| `/help` | Search available commands |
|
|
220
|
+
| `/provider` | Switch the active AI provider |
|
|
221
|
+
| `/apikey` | Add, replace, remove, or validate a provider key |
|
|
222
|
+
| `/model` | Browse and select the provider's model catalogue |
|
|
223
|
+
| `/config` | Show current configuration |
|
|
224
|
+
| `/settings` | Open settings or change a named setting |
|
|
225
|
+
| `/assist` | Enable or disable Assist Mode |
|
|
226
|
+
| `/permission` | View or set the Assist permission mode |
|
|
227
|
+
| `/computer` | Show Computer Engine status and permissions |
|
|
228
|
+
| `/screenshot` | Capture a screenshot |
|
|
229
|
+
| `/windows` | List open windows |
|
|
230
|
+
| `/tools` | List tools available in Assist Mode |
|
|
231
|
+
| `/index` | Show a compact project tree |
|
|
232
|
+
| `/files` | Search project files |
|
|
233
|
+
| `/history` | Browse saved sessions |
|
|
234
|
+
| `/doctor` | Diagnose configuration, network, and provider health |
|
|
235
|
+
| `/theme` | Change the terminal theme |
|
|
236
|
+
| `/shortcuts` | Show keyboard shortcuts |
|
|
237
|
+
| `/reset` | Forget the current conversation context |
|
|
238
|
+
| `/clear` | Clear the screen |
|
|
239
|
+
| `/version` | Show the SeedCode version |
|
|
240
|
+
| `/exit` | Leave the current chat |
|
|
241
|
+
|
|
242
|
+
Useful keyboard shortcuts include `Ctrl+K` for the command palette,
|
|
243
|
+
`Ctrl+P` for project file search, `Ctrl+R` for history, `Ctrl+,` for
|
|
244
|
+
settings, and `Ctrl+/` for the shortcut reference.
|
|
245
|
+
|
|
246
|
+
## Configuration and local data
|
|
247
|
+
|
|
248
|
+
SeedCode stores local state under:
|
|
249
|
+
|
|
250
|
+
```text
|
|
251
|
+
~/.seedcode/
|
|
252
|
+
├── config.json provider and application settings
|
|
253
|
+
├── history/ saved conversation sessions
|
|
254
|
+
├── memory/ persistent local memory
|
|
255
|
+
└── logs/ rotating diagnostic logs
|
|
256
|
+
```
|
|
257
|
+
|
|
258
|
+
Configuration and credentials are kept locally. Provider entries are isolated,
|
|
259
|
+
and environment variables take precedence over stored API keys. Logs are
|
|
260
|
+
designed for diagnostics and do not record API keys or message content.
|
|
261
|
+
|
|
262
|
+
The `doctor` command can check configuration, connectivity, provider health,
|
|
263
|
+
and available computer capabilities:
|
|
264
|
+
|
|
265
|
+
```text
|
|
266
|
+
/doctor
|
|
267
|
+
```
|
|
268
|
+
|
|
269
|
+
## Platform support
|
|
270
|
+
|
|
271
|
+
- **Windows:** full desktop operator support, including UI automation, OCR,
|
|
272
|
+
application discovery, installer workflow, and browser integration.
|
|
273
|
+
- **Linux/macOS:** terminal chat, provider integrations, project tools, and
|
|
274
|
+
local configuration.
|
|
275
|
+
- **Browser extraction:** requires the user's existing DevTools/CDP browser
|
|
276
|
+
connection.
|
|
277
|
+
|
|
278
|
+
The desktop extra installs the computer-control dependencies:
|
|
279
|
+
|
|
280
|
+
```bash
|
|
281
|
+
python -m pip install "seedcode-cli[desktop]"
|
|
282
|
+
```
|
|
283
|
+
|
|
284
|
+
Optional WebDriver support is available for workflows that genuinely need an
|
|
285
|
+
isolated browser profile:
|
|
286
|
+
|
|
287
|
+
```bash
|
|
288
|
+
python -m pip install "seedcode-cli[browser]"
|
|
289
|
+
```
|
|
290
|
+
|
|
291
|
+
## Development
|
|
292
|
+
|
|
293
|
+
Clone the repository and install an editable development environment:
|
|
294
|
+
|
|
295
|
+
```bash
|
|
296
|
+
git clone https://github.com/Alshahriar-07/seedcode-cli.git
|
|
297
|
+
cd seedcode-cli
|
|
298
|
+
python -m pip install -e ".[dev]"
|
|
299
|
+
```
|
|
300
|
+
|
|
301
|
+
The public entry points are:
|
|
302
|
+
|
|
303
|
+
```bash
|
|
304
|
+
seedcode
|
|
305
|
+
python -m seedcode
|
|
306
|
+
seedcode --help
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
### Windows release build
|
|
310
|
+
|
|
311
|
+
The existing Windows pipeline generates branding assets, packages a
|
|
312
|
+
self-contained executable with PyInstaller, and compiles the Inno Setup
|
|
313
|
+
installer:
|
|
314
|
+
|
|
315
|
+
```bat
|
|
316
|
+
scripts\windows\build.bat
|
|
317
|
+
```
|
|
318
|
+
|
|
319
|
+
The build requires Python 3.12+, the project dependencies, PyInstaller, and
|
|
320
|
+
Inno Setup 6 (`ISCC.exe`). Build details and installer behavior are documented
|
|
321
|
+
in [`scripts/windows/README.md`](scripts/windows/README.md).
|
|
322
|
+
|
|
323
|
+
### Python distributions
|
|
324
|
+
|
|
325
|
+
```bash
|
|
326
|
+
python -m pip install build twine
|
|
327
|
+
python -m build
|
|
328
|
+
python -m twine check dist/*
|
|
329
|
+
```
|
|
330
|
+
|
|
331
|
+
## Release workflow
|
|
332
|
+
|
|
333
|
+
The version has one source of truth:
|
|
334
|
+
[`seedcode/__init__.py`](seedcode/__init__.py). Release automation uses the
|
|
335
|
+
same version for package metadata, the CLI, installer metadata, GitHub
|
|
336
|
+
releases, and WinGet manifests.
|
|
337
|
+
|
|
338
|
+
The release workflow:
|
|
339
|
+
|
|
340
|
+
1. builds and validates Python distributions;
|
|
341
|
+
2. builds the branded Windows installer;
|
|
342
|
+
3. computes the installer checksum;
|
|
343
|
+
4. generates WinGet manifests; and
|
|
344
|
+
5. publishes the release assets.
|
|
345
|
+
|
|
346
|
+
## Security model
|
|
347
|
+
|
|
348
|
+
SeedCode favors explicit capability boundaries:
|
|
349
|
+
|
|
350
|
+
- credentials stay local and provider-scoped;
|
|
351
|
+
- computer actions pass through permission checks;
|
|
352
|
+
- application installation uses `winget`;
|
|
353
|
+
- action targets are resolved and verified before dispatch;
|
|
354
|
+
- lifecycle/self-guard checks prevent unsafe operation states; and
|
|
355
|
+
- retry limits prevent uncontrolled repetition.
|
|
356
|
+
|
|
357
|
+
No automation system is risk-free. Review permissions before enabling Assist
|
|
358
|
+
Mode, especially when working in an unfamiliar project or with sensitive
|
|
359
|
+
applications.
|
|
360
|
+
|
|
361
|
+
## Credits
|
|
362
|
+
|
|
363
|
+
- **Created by:** Al Shahriar Sowan
|
|
364
|
+
- **Publisher:** Eagox Studio
|
|
365
|
+
|
|
366
|
+
## License
|
|
367
|
+
|
|
368
|
+
MIT — see [`LICENSE`](LICENSE).
|