seedcode-cli 8.2.5__tar.gz → 9.1.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.
Files changed (151) hide show
  1. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/.gitignore +4 -1
  2. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/PKG-INFO +43 -19
  3. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/README.md +41 -17
  4. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/npm/README.md +1 -1
  5. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/pyproject.toml +11 -0
  6. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/scripts/windows/README.md +1 -1
  7. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/__init__.py +1 -1
  8. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/_default_key_template.py +1 -1
  9. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/app.py +272 -30
  10. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/cli.py +13 -3
  11. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/codemode.py +118 -50
  12. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/codemode_state.py +12 -4
  13. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/commands/__init__.py +14 -0
  14. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/commands/agent.py +5 -3
  15. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/commands/assist.py +154 -43
  16. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/commands/codemode.py +85 -9
  17. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/commands/desktop.py +2 -2
  18. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/commands/mode.py +3 -3
  19. seedcode_cli-9.1.0/seedcode/commands/youtube_music.py +68 -0
  20. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/core/models.py +1 -1
  21. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/core/modes.py +2 -2
  22. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/core/providers/__init__.py +20 -9
  23. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/core/session.py +10 -2
  24. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/core/tasks.py +22 -0
  25. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/ui/__init__.py +20 -5
  26. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/ui/codemode_header.py +2 -2
  27. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/ui/content.py +1 -1
  28. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/ui/dashboard.py +5 -5
  29. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/ui/header.py +1 -1
  30. seedcode_cli-9.1.0/seedcode/ui/mode_switch.py +276 -0
  31. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/ui/state.py +11 -1
  32. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/ui/statusbar.py +1 -1
  33. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/ui/tasks.py +1 -1
  34. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/ui/tui.py +292 -32
  35. seedcode_cli-9.1.0/seedcode/workspace.py +336 -0
  36. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/LICENSE +0 -0
  37. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/npm/LICENSE +0 -0
  38. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/scripts/pyproject_build_hook.py +0 -0
  39. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/__main__.py +0 -0
  40. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/apps/__init__.py +0 -0
  41. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/apps/discovery.py +0 -0
  42. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/apps/installer.py +0 -0
  43. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/apps/launcher.py +0 -0
  44. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/apps/verifier.py +0 -0
  45. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/assets/logo.png +0 -0
  46. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/branding.py +0 -0
  47. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/commands/about.py +0 -0
  48. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/commands/chat.py +0 -0
  49. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/commands/clear.py +0 -0
  50. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/commands/doctor.py +0 -0
  51. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/commands/help.py +0 -0
  52. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/commands/history.py +0 -0
  53. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/commands/palette.py +0 -0
  54. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/commands/provider.py +0 -0
  55. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/commands/session.py +0 -0
  56. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/commands/status.py +0 -0
  57. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/commands/theme.py +0 -0
  58. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/__init__.py +0 -0
  59. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/browser.py +0 -0
  60. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/browser_cdp.py +0 -0
  61. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/browser_engine.py +0 -0
  62. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/browser_extract.py +0 -0
  63. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/browser_popups.py +0 -0
  64. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/browser_selenium.py +0 -0
  65. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/browser_skills.py +0 -0
  66. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/catalog.py +0 -0
  67. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/controller.py +0 -0
  68. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/dispatcher.py +0 -0
  69. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/dpi.py +0 -0
  70. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/engine.py +0 -0
  71. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/keyboard.py +0 -0
  72. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/lifecycle_guard.py +0 -0
  73. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/logbook.py +0 -0
  74. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/mouse.py +0 -0
  75. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/ocr.py +0 -0
  76. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/operator_skills.py +0 -0
  77. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/permissions.py +0 -0
  78. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/recovery.py +0 -0
  79. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/registry.py +0 -0
  80. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/resolver.py +0 -0
  81. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/screen.py +0 -0
  82. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/screen_state.py +0 -0
  83. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/selfguard.py +0 -0
  84. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/semantic.py +0 -0
  85. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/skills.py +0 -0
  86. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/state.py +0 -0
  87. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/verifier.py +0 -0
  88. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/vision.py +0 -0
  89. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/computer/windows.py +0 -0
  90. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/config/__init__.py +0 -0
  91. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/config/defaults.py +0 -0
  92. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/config/manager.py +0 -0
  93. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/core/__init__.py +0 -0
  94. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/core/agent.py +0 -0
  95. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/core/chat.py +0 -0
  96. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/core/client.py +0 -0
  97. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/core/errors.py +0 -0
  98. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/core/http.py +0 -0
  99. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/core/identity.py +0 -0
  100. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/core/identity_store.py +0 -0
  101. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/core/lifecycle.py +0 -0
  102. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/core/limits.py +0 -0
  103. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/core/project.py +0 -0
  104. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/core/providers/aerolink.py +0 -0
  105. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/core/providers/base.py +0 -0
  106. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/core/providers/custom.py +0 -0
  107. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/core/providers/default.py +0 -0
  108. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/core/providers/failover.py +0 -0
  109. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/core/providers/freemodel.py +0 -0
  110. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/core/providers/health.py +0 -0
  111. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/core/providers/ollama.py +0 -0
  112. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/core/providers/ollama_start.py +0 -0
  113. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/core/providers/openrouter.py +0 -0
  114. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/core/streaming.py +0 -0
  115. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/default_api.py +0 -0
  116. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/defaults.py +0 -0
  117. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/memory/__init__.py +0 -0
  118. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/memory/manager.py +0 -0
  119. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/memory/storage.py +0 -0
  120. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/memory/store.py +0 -0
  121. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/tools/__init__.py +0 -0
  122. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/tools/base.py +0 -0
  123. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/tools/desktop.py +0 -0
  124. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/tools/filesystem.py +0 -0
  125. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/tools/git.py +0 -0
  126. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/tools/patch.py +0 -0
  127. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/tools/permissions.py +0 -0
  128. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/tools/search.py +0 -0
  129. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/tools/terminal.py +0 -0
  130. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/tools/textio.py +0 -0
  131. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/ui/badges.py +0 -0
  132. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/ui/dialog.py +0 -0
  133. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/ui/fuzzy.py +0 -0
  134. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/ui/layout.py +0 -0
  135. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/ui/menu.py +0 -0
  136. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/ui/palette.py +0 -0
  137. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/ui/progress.py +0 -0
  138. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/ui/prompts.py +0 -0
  139. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/ui/reference.py +0 -0
  140. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/ui/renderer.py +0 -0
  141. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/ui/searchbox.py +0 -0
  142. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/ui/selector.py +0 -0
  143. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/ui/session_view.py +0 -0
  144. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/ui/textbox.py +0 -0
  145. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/ui/theme.py +0 -0
  146. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/ui/tree.py +0 -0
  147. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/utils/__init__.py +0 -0
  148. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/utils/helpers.py +0 -0
  149. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/utils/logger.py +0 -0
  150. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/utils/terminal_env.py +0 -0
  151. {seedcode_cli-8.2.5 → seedcode_cli-9.1.0}/seedcode/utils/text.py +0 -0
@@ -63,12 +63,15 @@ Desktop.ini
63
63
  .vscode/
64
64
  .claude/
65
65
 
66
- # Scratch / temporary artifacts
66
+ # Scratch / temporary artifacts (never part of a release)
67
67
  *.tmp
68
68
  *.bak
69
69
  *.orig
70
70
  *.rej
71
71
  *.crdownload
72
+ _scratch*
73
+ /probe*
74
+ errorlevel
72
75
  opencode.txt
73
76
  V6.2.0/
74
77
  newupdatec6.2.5/
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.5
1
+ Metadata-Version: 2.4
2
2
  Name: seedcode-cli
3
- Version: 8.2.5
3
+ Version: 9.1.0
4
4
  Summary: Seed Code — a premium terminal-based AI coding assistant. Plant ideas. Grow code.
5
5
  Project-URL: Homepage, https://github.com/Alshahriar-07/seedcode-cli
6
6
  Project-URL: Repository, https://github.com/Alshahriar-07/seedcode-cli
@@ -55,7 +55,7 @@ Description-Content-Type: text/markdown
55
55
  > *Plant ideas. Grow code.*
56
56
 
57
57
  Seed Code is a premium terminal-based AI coding assistant and task runner.
58
- v8.2.5 exposes exactly **two modes** — **Chat Mode** and **Agent Mode** — over a
58
+ v9.1.0 exposes exactly **two modes** — **Chat Mode** and **Agent Mode** — over a
59
59
  multi-provider, multi-model engine, behind the Seed Code startup logo and a
60
60
  compact block of live session state.
61
61
 
@@ -95,7 +95,7 @@ remain accepted aliases, but nothing in the UI presents a third mode.
95
95
  `AI > ✓ Tests passed`) whose lines appear only when the underlying operation
96
96
  really starts. There is no manual to-do list to create or manage, and
97
97
  completing a task never closes the application.
98
- - **Version:** 8.2.5 (`seedcode --version`)
98
+ - **Version:** 9.1.0 (`seedcode --version`)
99
99
 
100
100
  ## Installation
101
101
 
@@ -154,8 +154,8 @@ Python required) and both run the same CLI:
154
154
 
155
155
  | Download | What it is |
156
156
  | --- | --- |
157
- | `SeedCode-CLI-Setup-8.2.5.exe` | **Setup installer (recommended).** A wizard that installs to Program Files, adds Seed Code to the system `PATH`, creates a Start Menu shortcut with an optional desktop shortcut, verifies the installation before reporting success, and ships a clean uninstaller that never deletes your project data silently. |
158
- | `SeedCode-CLI-8.2.5-windows-x64.exe` | **Standalone executable.** A single portable `seedcode.exe` — no installation and no admin rights. The Windows IRM installer above downloads exactly this file. Run it directly from wherever you put it. |
157
+ | `SeedCode-CLI-Setup-9.1.0.exe` | **Setup installer (recommended).** A wizard that installs to Program Files, adds Seed Code to the system `PATH`, creates a Start Menu shortcut with an optional desktop shortcut, verifies the installation before reporting success, and ships a clean uninstaller that never deletes your project data silently. |
158
+ | `SeedCode-CLI-9.1.0-windows-x64.exe` | **Standalone executable.** A single portable `seedcode.exe` — no installation and no admin rights. The Windows IRM installer above downloads exactly this file. Run it directly from wherever you put it. |
159
159
 
160
160
  Both are published on the
161
161
  [Releases page](https://github.com/Alshahriar-07/seedcode-cli/releases) with
@@ -164,7 +164,7 @@ their SHA256 in `SHA256SUMS.txt`.
164
164
  After installing by any route:
165
165
 
166
166
  ```bash
167
- seedcode --version # -> Seed Code CLI 8.2.5
167
+ seedcode --version # -> Seed Code CLI 9.1.0
168
168
  ```
169
169
 
170
170
  > **`seedcode` not recognized?** Open a *new* terminal. `PATH` changes only
@@ -187,6 +187,30 @@ seedcode
187
187
  seedcode
188
188
  ```
189
189
 
190
+ On first launch Seed Code asks where it may work:
191
+
192
+ ```text
193
+ Select Workspace
194
+ --------------------------------------------------------------
195
+ Where should Seed Code work? Agent Mode reads, writes, indexes and
196
+ runs commands only inside the folder you pick.
197
+
198
+ 1 Current Folder D:\Projects\my-site
199
+ 2 Choose a Folder browse this PC and pick any directory
200
+
201
+ Select [1] >
202
+ ```
203
+
204
+ `Current Folder` keeps the directory you launched from. `Choose a Folder` opens
205
+ your operating system's native folder picker and makes the chosen directory the
206
+ **workspace** — the single root for Agent Mode, file reads and writes, project
207
+ indexing, the `.seedcode` context and `plan.md`, terminal commands and
208
+ verification. Nothing outside that root is touched without permission.
209
+
210
+ Automation is never blocked: `SEEDCODE_WORKSPACE=<dir>` selects the workspace
211
+ directly, and `SEEDCODE_NO_WORKSPACE_PROMPT=1` (or a non-interactive host) keeps
212
+ the launch directory.
213
+
190
214
  You land in the persistent Seed Code workspace: a fixed header carrying the
191
215
  Seed Code ASCII logo, a scrolling conversation region and a fixed message
192
216
  composer. The header is a live dashboard — it never scrolls away, and its
@@ -194,7 +218,7 @@ values (provider, model, mode, status, workspace, context budget and the masked
194
218
  API key) update in place the moment they change.
195
219
 
196
220
  ```text
197
- ╭─ Seed Code CLI v8.2.5 ───────────────────────────────────────────────────────────────────────╮
221
+ ╭─ Seed Code CLI v9.1.0 ───────────────────────────────────────────────────────────────────────╮
198
222
  │ ▄█████ ▄▄▄▄▄ ▄▄▄▄▄ ▄▄▄▄ ▄█████ ▄▄▄ ▄▄▄▄ ▄▄▄▄▄ ▄█████ ██ ██ │
199
223
  │ ▀▀▀▄▄▄ ██▄▄ ██▄▄ ██▀██ ██ ██▀██ ██▀██ ██▄▄ ██ ██ ██ │
200
224
  │ █████▀ ██▄▄▄ ██▄▄▄ ████▀ ▀█████ ▀███▀ ████▀ ██▄▄▄ ▀█████ ██████ ██ │
@@ -243,12 +267,12 @@ Below is the rendering used when the persistent interface is not available — a
243
267
  piped host, `SEEDCODE_NO_TUI=1`, or a console that cannot draw it:
244
268
 
245
269
  ```text
246
- ╭─ Seed Code CLI v8.2.5 ───────────────────────────────────────────────────────────────────────╮
270
+ ╭─ Seed Code CLI v9.1.0 ───────────────────────────────────────────────────────────────────────╮
247
271
  │ ▄█████ ▄▄▄▄▄ ▄▄▄▄▄ ▄▄▄▄ ▄█████ ▄▄▄ ▄▄▄▄ ▄▄▄▄▄ ▄█████ ██ ██ │
248
272
  │ ▀▀▀▄▄▄ ██▄▄ ██▄▄ ██▀██ ██ ██▀██ ██▀██ ██▄▄ ██ ██ ██ │
249
273
  │ █████▀ ██▄▄▄ ██▄▄▄ ████▀ ▀█████ ▀███▀ ████▀ ██▄▄▄ ▀█████ ██████ ██ │
250
274
  │ │
251
- │ Seed Code CLI v8.2.5 │
275
+ │ Seed Code CLI v9.1.0 │
252
276
  │ Plant ideas. Grow code. │
253
277
  │ Provider OpenRouter │
254
278
  │ Model cohere/north-mini-code:free │
@@ -461,7 +485,7 @@ sequential console Agent Mode additionally shows the plan as a checklist. Both
461
485
  reflect what the agent really did:
462
486
 
463
487
  ```text
464
- ╭─ SEEDCODE 8.2.5 • AGENT MODE ───────────────╮
488
+ ╭─ SEEDCODE 9.1.0 • AGENT MODE ───────────────╮
465
489
  │ ● RUNNING Task 3/8 Build authentication │
466
490
  │ ████████████░░░░ 72% • 4m 32s • 18 calls │
467
491
  │ → Running: pytest tests/auth │
@@ -702,21 +726,21 @@ stage fails loudly on a version mismatch, so a stale binary can never ship.
702
726
 
703
727
  Details: [`scripts/windows/README.md`](scripts/windows/README.md).
704
728
 
705
- ### Release artifacts (v8.2.5)
729
+ ### Release artifacts (v9.1.0)
706
730
 
707
- Release: [v8.2.5](https://github.com/Alshahriar-07/seedcode-cli/releases/tag/v8.2.5)
731
+ Release: [v9.1.0](https://github.com/Alshahriar-07/seedcode-cli/releases/tag/v9.1.0)
708
732
 
709
733
  | Artifact | Purpose |
710
734
  | --- | --- |
711
- | `SeedCode-CLI-Setup-8.2.5.exe` | Windows installer (Inno Setup) |
712
- | `SeedCode-CLI-8.2.5-windows-x64.exe` | Standalone Windows EXE — downloaded by the Windows IRM installer |
713
- | `seedcode_cli-8.2.5-py3-none-any.whl` | Python wheel — downloaded by the Linux IRM installer |
714
- | `seedcode_cli-8.2.5.tar.gz` | Python source distribution |
735
+ | `SeedCode-CLI-Setup-9.1.0.exe` | Windows installer (Inno Setup) |
736
+ | `SeedCode-CLI-9.1.0-windows-x64.exe` | Standalone Windows EXE — downloaded by the Windows IRM installer |
737
+ | `seedcode_cli-9.1.0-py3-none-any.whl` | Python wheel — downloaded by the Linux IRM installer |
738
+ | `seedcode_cli-9.1.0.tar.gz` | Python source distribution |
715
739
  | `SHA256SUMS.txt` | SHA256 checksums; verified by both installers |
716
740
 
717
- Built artifacts are collected in `dist/release/8.2.5/` during a release
741
+ Built artifacts are collected in `dist/release/9.1.0/` during a release
718
742
  build. Publishing (GitHub Release) is a separate step; the remote installers
719
- read the release named `v8.2.5`.
743
+ read the release named `v9.1.0`.
720
744
 
721
745
  ### The remote installers
722
746
 
@@ -6,7 +6,7 @@
6
6
  > *Plant ideas. Grow code.*
7
7
 
8
8
  Seed Code is a premium terminal-based AI coding assistant and task runner.
9
- v8.2.5 exposes exactly **two modes** — **Chat Mode** and **Agent Mode** — over a
9
+ v9.1.0 exposes exactly **two modes** — **Chat Mode** and **Agent Mode** — over a
10
10
  multi-provider, multi-model engine, behind the Seed Code startup logo and a
11
11
  compact block of live session state.
12
12
 
@@ -46,7 +46,7 @@ remain accepted aliases, but nothing in the UI presents a third mode.
46
46
  `AI > ✓ Tests passed`) whose lines appear only when the underlying operation
47
47
  really starts. There is no manual to-do list to create or manage, and
48
48
  completing a task never closes the application.
49
- - **Version:** 8.2.5 (`seedcode --version`)
49
+ - **Version:** 9.1.0 (`seedcode --version`)
50
50
 
51
51
  ## Installation
52
52
 
@@ -105,8 +105,8 @@ Python required) and both run the same CLI:
105
105
 
106
106
  | Download | What it is |
107
107
  | --- | --- |
108
- | `SeedCode-CLI-Setup-8.2.5.exe` | **Setup installer (recommended).** A wizard that installs to Program Files, adds Seed Code to the system `PATH`, creates a Start Menu shortcut with an optional desktop shortcut, verifies the installation before reporting success, and ships a clean uninstaller that never deletes your project data silently. |
109
- | `SeedCode-CLI-8.2.5-windows-x64.exe` | **Standalone executable.** A single portable `seedcode.exe` — no installation and no admin rights. The Windows IRM installer above downloads exactly this file. Run it directly from wherever you put it. |
108
+ | `SeedCode-CLI-Setup-9.1.0.exe` | **Setup installer (recommended).** A wizard that installs to Program Files, adds Seed Code to the system `PATH`, creates a Start Menu shortcut with an optional desktop shortcut, verifies the installation before reporting success, and ships a clean uninstaller that never deletes your project data silently. |
109
+ | `SeedCode-CLI-9.1.0-windows-x64.exe` | **Standalone executable.** A single portable `seedcode.exe` — no installation and no admin rights. The Windows IRM installer above downloads exactly this file. Run it directly from wherever you put it. |
110
110
 
111
111
  Both are published on the
112
112
  [Releases page](https://github.com/Alshahriar-07/seedcode-cli/releases) with
@@ -115,7 +115,7 @@ their SHA256 in `SHA256SUMS.txt`.
115
115
  After installing by any route:
116
116
 
117
117
  ```bash
118
- seedcode --version # -> Seed Code CLI 8.2.5
118
+ seedcode --version # -> Seed Code CLI 9.1.0
119
119
  ```
120
120
 
121
121
  > **`seedcode` not recognized?** Open a *new* terminal. `PATH` changes only
@@ -138,6 +138,30 @@ seedcode
138
138
  seedcode
139
139
  ```
140
140
 
141
+ On first launch Seed Code asks where it may work:
142
+
143
+ ```text
144
+ Select Workspace
145
+ --------------------------------------------------------------
146
+ Where should Seed Code work? Agent Mode reads, writes, indexes and
147
+ runs commands only inside the folder you pick.
148
+
149
+ 1 Current Folder D:\Projects\my-site
150
+ 2 Choose a Folder browse this PC and pick any directory
151
+
152
+ Select [1] >
153
+ ```
154
+
155
+ `Current Folder` keeps the directory you launched from. `Choose a Folder` opens
156
+ your operating system's native folder picker and makes the chosen directory the
157
+ **workspace** — the single root for Agent Mode, file reads and writes, project
158
+ indexing, the `.seedcode` context and `plan.md`, terminal commands and
159
+ verification. Nothing outside that root is touched without permission.
160
+
161
+ Automation is never blocked: `SEEDCODE_WORKSPACE=<dir>` selects the workspace
162
+ directly, and `SEEDCODE_NO_WORKSPACE_PROMPT=1` (or a non-interactive host) keeps
163
+ the launch directory.
164
+
141
165
  You land in the persistent Seed Code workspace: a fixed header carrying the
142
166
  Seed Code ASCII logo, a scrolling conversation region and a fixed message
143
167
  composer. The header is a live dashboard — it never scrolls away, and its
@@ -145,7 +169,7 @@ values (provider, model, mode, status, workspace, context budget and the masked
145
169
  API key) update in place the moment they change.
146
170
 
147
171
  ```text
148
- ╭─ Seed Code CLI v8.2.5 ───────────────────────────────────────────────────────────────────────╮
172
+ ╭─ Seed Code CLI v9.1.0 ───────────────────────────────────────────────────────────────────────╮
149
173
  │ ▄█████ ▄▄▄▄▄ ▄▄▄▄▄ ▄▄▄▄ ▄█████ ▄▄▄ ▄▄▄▄ ▄▄▄▄▄ ▄█████ ██ ██ │
150
174
  │ ▀▀▀▄▄▄ ██▄▄ ██▄▄ ██▀██ ██ ██▀██ ██▀██ ██▄▄ ██ ██ ██ │
151
175
  │ █████▀ ██▄▄▄ ██▄▄▄ ████▀ ▀█████ ▀███▀ ████▀ ██▄▄▄ ▀█████ ██████ ██ │
@@ -194,12 +218,12 @@ Below is the rendering used when the persistent interface is not available — a
194
218
  piped host, `SEEDCODE_NO_TUI=1`, or a console that cannot draw it:
195
219
 
196
220
  ```text
197
- ╭─ Seed Code CLI v8.2.5 ───────────────────────────────────────────────────────────────────────╮
221
+ ╭─ Seed Code CLI v9.1.0 ───────────────────────────────────────────────────────────────────────╮
198
222
  │ ▄█████ ▄▄▄▄▄ ▄▄▄▄▄ ▄▄▄▄ ▄█████ ▄▄▄ ▄▄▄▄ ▄▄▄▄▄ ▄█████ ██ ██ │
199
223
  │ ▀▀▀▄▄▄ ██▄▄ ██▄▄ ██▀██ ██ ██▀██ ██▀██ ██▄▄ ██ ██ ██ │
200
224
  │ █████▀ ██▄▄▄ ██▄▄▄ ████▀ ▀█████ ▀███▀ ████▀ ██▄▄▄ ▀█████ ██████ ██ │
201
225
  │ │
202
- │ Seed Code CLI v8.2.5 │
226
+ │ Seed Code CLI v9.1.0 │
203
227
  │ Plant ideas. Grow code. │
204
228
  │ Provider OpenRouter │
205
229
  │ Model cohere/north-mini-code:free │
@@ -412,7 +436,7 @@ sequential console Agent Mode additionally shows the plan as a checklist. Both
412
436
  reflect what the agent really did:
413
437
 
414
438
  ```text
415
- ╭─ SEEDCODE 8.2.5 • AGENT MODE ───────────────╮
439
+ ╭─ SEEDCODE 9.1.0 • AGENT MODE ───────────────╮
416
440
  │ ● RUNNING Task 3/8 Build authentication │
417
441
  │ ████████████░░░░ 72% • 4m 32s • 18 calls │
418
442
  │ → Running: pytest tests/auth │
@@ -653,21 +677,21 @@ stage fails loudly on a version mismatch, so a stale binary can never ship.
653
677
 
654
678
  Details: [`scripts/windows/README.md`](scripts/windows/README.md).
655
679
 
656
- ### Release artifacts (v8.2.5)
680
+ ### Release artifacts (v9.1.0)
657
681
 
658
- Release: [v8.2.5](https://github.com/Alshahriar-07/seedcode-cli/releases/tag/v8.2.5)
682
+ Release: [v9.1.0](https://github.com/Alshahriar-07/seedcode-cli/releases/tag/v9.1.0)
659
683
 
660
684
  | Artifact | Purpose |
661
685
  | --- | --- |
662
- | `SeedCode-CLI-Setup-8.2.5.exe` | Windows installer (Inno Setup) |
663
- | `SeedCode-CLI-8.2.5-windows-x64.exe` | Standalone Windows EXE — downloaded by the Windows IRM installer |
664
- | `seedcode_cli-8.2.5-py3-none-any.whl` | Python wheel — downloaded by the Linux IRM installer |
665
- | `seedcode_cli-8.2.5.tar.gz` | Python source distribution |
686
+ | `SeedCode-CLI-Setup-9.1.0.exe` | Windows installer (Inno Setup) |
687
+ | `SeedCode-CLI-9.1.0-windows-x64.exe` | Standalone Windows EXE — downloaded by the Windows IRM installer |
688
+ | `seedcode_cli-9.1.0-py3-none-any.whl` | Python wheel — downloaded by the Linux IRM installer |
689
+ | `seedcode_cli-9.1.0.tar.gz` | Python source distribution |
666
690
  | `SHA256SUMS.txt` | SHA256 checksums; verified by both installers |
667
691
 
668
- Built artifacts are collected in `dist/release/8.2.5/` during a release
692
+ Built artifacts are collected in `dist/release/9.1.0/` during a release
669
693
  build. Publishing (GitHub Release) is a separate step; the remote installers
670
- read the release named `v8.2.5`.
694
+ read the release named `v9.1.0`.
671
695
 
672
696
  ### The remote installers
673
697
 
@@ -16,7 +16,7 @@ Releases:
16
16
  A compatibility launcher retained for users who already manage tooling through
17
17
  npm. It is a thin wrapper around the official release: on Windows it downloads
18
18
  the official `SeedCode-CLI-<version>-windows-x64.exe` for this package's
19
- version (currently **8.2.5**) from the GitHub release, verifies its SHA256
19
+ version (currently **9.1.0**) from the GitHub release, verifies its SHA256
20
20
  against the release's `SHA256SUMS.txt`, caches it under `~/.seedcode/npm/`,
21
21
  and runs it — Python is never required. On Linux and macOS it defers to the
22
22
  official installer rather than shipping a binary.
@@ -93,10 +93,21 @@ path = "seedcode/__init__.py"
93
93
  path = "scripts/pyproject_build_hook.py"
94
94
  require-runtime-dependencies = false
95
95
 
96
+ # Pin Core Metadata 2.4 rather than letting hatchling emit its 2.5 default.
97
+ # Everything this project publishes is expressible in 2.4 (PEP 639's
98
+ # License-Expression / License-File landed in 2.4; only PEP 794's Import-Name /
99
+ # Import-Namespace need 2.5, and this distribution declares neither), while
100
+ # twine 6.x still *hard-caps* the metadata versions it accepts at 2.4 - it
101
+ # monkeypatches packaging._VALID_METADATA_VERSIONS to drop 2.5. The release
102
+ # workflow runs `python -m twine check dist/*` as a publish gate, so a 2.5
103
+ # wheel would fail its own release. 2.4 is the newest version the whole
104
+ # toolchain round-trips.
96
105
  [tool.hatch.build.targets.wheel]
97
106
  packages = ["seedcode"]
107
+ core-metadata-version = "2.4"
98
108
 
99
109
  [tool.hatch.build.targets.sdist]
100
110
  # The build hook ships in the sdist: pip rebuilds the wheel from the
101
111
  # extracted sdist, and hatchling must be able to load the hook there.
102
112
  include = ["seedcode", "scripts/pyproject_build_hook.py", "README.md", "LICENSE"]
113
+ core-metadata-version = "2.4"
@@ -76,7 +76,7 @@ Python runtime and every dependency inside it.
76
76
  publishes a verified copy to the repository root as the stable
77
77
  **`seedcode-cli-setup.exe`**, and stages the versioned copy for release as
78
78
  **`SeedCode-CLI-Setup-<version>.exe`** — the name attached to the GitHub
79
- release for that version (currently **8.2.5**), alongside the standalone
79
+ release for that version (currently **9.1.0**), alongside the standalone
80
80
  `SeedCode-CLI-<version>-windows-x64.exe` and `SHA256SUMS.txt` (which is what
81
81
  the remote installers verify against).
82
82
 
@@ -6,7 +6,7 @@ Plant ideas. Grow code.
6
6
  # Single source of truth for the application version. Every consumer reads it:
7
7
  # the PyPI build (via [tool.hatch.version]), the CLI --version flag, the
8
8
  # Windows installer metadata, the GitHub release tag, and the WinGet manifest.
9
- __version__ = "8.2.5"
9
+ __version__ = "9.1.0"
10
10
  __author__ = "Al Shahriar Sowan"
11
11
  __publisher__ = "Eagox Studio"
12
12
  # Current author/company links, surfaced by /about and the README credits.
@@ -1,4 +1,4 @@
1
- """Embedded built-in credential for the Default provider (v7.1.0 artifact).
1
+ """Embedded built-in credential for the Default provider (v9.1.0 artifact).
2
2
 
3
3
  This file is NOT committed to source control. The release build generates
4
4
  ``seedcode/_default_key.py`` from the local ``.env`` (see