@proxysoul/soulforge 1.0.3 → 1.1.0
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.
- package/README.md +27 -22
- package/dist/index.js +917 -774
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
<p align="center">
|
|
4
4
|
<strong>Graph-Powered Code Intelligence</strong><br/>
|
|
5
|
-
Multi-agent coding with codebase-aware AI — embedded Neovim,
|
|
5
|
+
Multi-agent coding with codebase-aware AI — embedded Neovim, 21 themes, terminal-native
|
|
6
6
|
</p>
|
|
7
7
|
|
|
8
8
|
<p align="center">
|
|
9
9
|
<a href="LICENSE"><img src="https://img.shields.io/badge/License-BSL%201.1-blue.svg" alt="License" /></a>
|
|
10
10
|
<a href="#"><img src="https://img.shields.io/badge/version-1.0.0-brightgreen.svg" alt="Version" /></a>
|
|
11
11
|
<a href="https://www.typescriptlang.org/"><img src="https://img.shields.io/badge/TypeScript-strict-blue.svg" alt="TypeScript" /></a>
|
|
12
|
-
<a href="#testing"><img src="https://img.shields.io/badge/tests-
|
|
12
|
+
<a href="#testing"><img src="https://img.shields.io/badge/tests-2296%20passing-brightgreen.svg" alt="Tests" /></a>
|
|
13
13
|
<a href="https://bun.sh"><img src="https://img.shields.io/badge/runtime-Bun-f472b6.svg" alt="Bun" /></a>
|
|
14
14
|
</p>
|
|
15
15
|
|
|
@@ -169,7 +169,7 @@ Installable skill system for domain-specific capabilities. Destructive action ap
|
|
|
169
169
|
|
|
170
170
|
## Architecture
|
|
171
171
|
|
|
172
|
-
The Forge Agent is the orchestrator. It holds
|
|
172
|
+
The Forge Agent is the orchestrator. It holds 33 tools including the `dispatch` tool, which creates an AgentBus and launches parallel subagents. Subagents share file/tool caches through the bus and coordinate edits via ownership tracking.
|
|
173
173
|
|
|
174
174
|
```mermaid
|
|
175
175
|
graph TB
|
|
@@ -177,7 +177,7 @@ graph TB
|
|
|
177
177
|
Chat --> Forge[Forge Agent]
|
|
178
178
|
|
|
179
179
|
subgraph Forge Tools
|
|
180
|
-
Tools[
|
|
180
|
+
Tools[33 Tools]
|
|
181
181
|
Dispatch[dispatch tool]
|
|
182
182
|
end
|
|
183
183
|
|
|
@@ -186,11 +186,11 @@ graph TB
|
|
|
186
186
|
|
|
187
187
|
Dispatch --> |creates| Bus[AgentBus<br/>file cache · tool cache<br/>findings · edit ownership]
|
|
188
188
|
|
|
189
|
-
Bus --> |spawns
|
|
190
|
-
Bus --> |spawns
|
|
191
|
-
Bus --> |spawns
|
|
189
|
+
Bus --> |spawns| I[Investigate Agent<br/>broad analysis]
|
|
190
|
+
Bus --> |spawns| E[Explore Agent<br/>targeted extraction]
|
|
191
|
+
Bus --> |spawns| C[Code Agent<br/>edits]
|
|
192
192
|
|
|
193
|
-
|
|
193
|
+
I & E & C --> |read/write cache| Bus
|
|
194
194
|
|
|
195
195
|
Tools --> Intel[Intelligence Router]
|
|
196
196
|
Tools --> Nvim[Neovim<br/>msgpack-RPC]
|
|
@@ -240,20 +240,20 @@ sequenceDiagram
|
|
|
240
240
|
participant F as Forge Agent
|
|
241
241
|
participant D as dispatch tool
|
|
242
242
|
participant B as AgentBus
|
|
243
|
-
participant
|
|
244
|
-
participant
|
|
243
|
+
participant I as Investigate
|
|
244
|
+
participant E as Explore
|
|
245
245
|
participant C as Code Agent
|
|
246
246
|
|
|
247
247
|
U->>F: "Audit auth and refactor middleware"
|
|
248
248
|
F->>D: dispatch(3 tasks)
|
|
249
249
|
D->>B: new AgentBus()
|
|
250
250
|
par Concurrent (3 slots, staggered)
|
|
251
|
-
D->>
|
|
252
|
-
D->>
|
|
253
|
-
D->>C: launch (dependsOn:
|
|
251
|
+
D->>I: launch investigate (t=0ms)
|
|
252
|
+
D->>E: launch explore (t=150ms)
|
|
253
|
+
D->>C: launch code (dependsOn: I, E)
|
|
254
254
|
end
|
|
255
|
-
|
|
256
|
-
|
|
255
|
+
I->>B: soul_grep counts + soul_analyze + findings
|
|
256
|
+
E->>B: targeted reads + findings
|
|
257
257
|
Note over B: Code agent reads<br/>hit cache instantly
|
|
258
258
|
B-->>C: dependencies resolved
|
|
259
259
|
C->>C: Edit with full context
|
|
@@ -411,7 +411,7 @@ soulforge --version # Version info
|
|
|
411
411
|
|
|
412
412
|
### Slash Commands
|
|
413
413
|
|
|
414
|
-
|
|
414
|
+
86 commands available — press `/` or `Ctrl+K` to browse. Key ones by category:
|
|
415
415
|
|
|
416
416
|
**Models & Providers**
|
|
417
417
|
`/model` `/router` `/provider` `/model-scope`
|
|
@@ -457,17 +457,18 @@ soulforge --version # Version info
|
|
|
457
457
|
|
|
458
458
|
## Tool Suite
|
|
459
459
|
|
|
460
|
-
SoulForge ships
|
|
460
|
+
SoulForge ships 33 tools organized by capability:
|
|
461
461
|
|
|
462
462
|
### Code Intelligence
|
|
463
463
|
|
|
464
464
|
| Tool | What it does |
|
|
465
465
|
|------|-------------|
|
|
466
|
-
| `
|
|
466
|
+
| `read_file` | Read files with optional `target` param for symbol extraction (LSP-powered) |
|
|
467
467
|
| `navigate` | Definition, references, call hierarchy, implementations |
|
|
468
468
|
| `analyze` | File diagnostics, unused symbols, complexity |
|
|
469
469
|
| `rename_symbol` | Compiler-guaranteed rename across all files |
|
|
470
470
|
| `move_symbol` | Move to another file + update all importers |
|
|
471
|
+
| `rename_file` | Rename/move a file with import path updates |
|
|
471
472
|
| `refactor` | Extract function/variable, organize imports |
|
|
472
473
|
|
|
473
474
|
### Codebase Analysis (zero LLM cost)
|
|
@@ -503,6 +504,10 @@ SoulForge ships 34 tools organized by capability:
|
|
|
503
504
|
|
|
504
505
|
**Planning:** `plan`, `update_plan_step`, `task_list`, `ask_user`
|
|
505
506
|
|
|
507
|
+
**Discovery:** `discover_pattern`, `test_scaffold`, `skills`
|
|
508
|
+
|
|
509
|
+
**Tool Management:** `request_tools`, `release_tools` (agent-managed mode — disabled by default)
|
|
510
|
+
|
|
506
511
|
</details>
|
|
507
512
|
|
|
508
513
|
---
|
|
@@ -723,7 +728,7 @@ See [GETTING_STARTED.md](GETTING_STARTED.md) for the full reference.
|
|
|
723
728
|
## Testing
|
|
724
729
|
|
|
725
730
|
```bash
|
|
726
|
-
bun test #
|
|
731
|
+
bun test # 2296 tests across 49 files
|
|
727
732
|
bun run typecheck # tsc --noEmit
|
|
728
733
|
bun run lint # biome check (lint + format)
|
|
729
734
|
bun run lint:fix # auto-fix
|
|
@@ -735,7 +740,7 @@ bun run lint:fix # auto-fix
|
|
|
735
740
|
|
|
736
741
|
| Document | Description |
|
|
737
742
|
|----------|-------------|
|
|
738
|
-
| **[Command Reference](docs/commands-reference.md)** | All
|
|
743
|
+
| **[Command Reference](docs/commands-reference.md)** | All 86 commands by category |
|
|
739
744
|
| **[Headless Mode](docs/headless.md)** | Non-interactive CLI for CI/CD, scripting, automation |
|
|
740
745
|
| **[Architecture](docs/architecture.md)** | System overview, data flow, component lifecycle |
|
|
741
746
|
| **[Repo Map](docs/repo-map.md)** | PageRank, cochange, blast radius, clone detection |
|
|
@@ -766,7 +771,7 @@ sf --headless CLI mode — CI/CD, scripts, automation ✓ shipped
|
|
|
766
771
|
SoulForge TUI Full experience (what you're looking at now)
|
|
767
772
|
```
|
|
768
773
|
|
|
769
|
-
- **`@soulforge/intelligence`** — graph intelligence,
|
|
774
|
+
- **`@soulforge/intelligence`** — graph intelligence, 33 tools, and agent orchestration as an importable package. Build your own AI tools on top of SoulForge's brain.
|
|
770
775
|
- **`@soulforge/mcp`** — expose soul_grep, soul_find, soul_analyze, soul_impact, navigate, read_code as MCP tools. Any AI tool that supports MCP gets SoulForge's graph intelligence.
|
|
771
776
|
- **`sf --headless`** — non-interactive mode. Pipe in a prompt, get back results. For CI/CD, automation, and benchmarks. [Documentation →](docs/headless.md)
|
|
772
777
|
|
|
@@ -775,7 +780,7 @@ SoulForge TUI Full experience (what you're looking at now)
|
|
|
775
780
|
- **Repo Map visualization** — interactive dependency graph, PageRank heatmap, blast radius explorer
|
|
776
781
|
- **GitHub CLI integration** — native `gh_pr`, `gh_issue`, `gh_status` tools with structured output
|
|
777
782
|
- **Dispatch worktrees** — git worktree per code agent for conflict-free parallel edits
|
|
778
|
-
- **[ACP support](https://agentclientprotocol.com/)** — Agent Client Protocol integration. Run SoulForge as a coding agent inside Zed, JetBrains, Neovim (agentic.nvim), or any ACP-compatible editor. Headless mode already covers 80% of the protocol surface — `sf --acp` would expose graph intelligence, multi-agent dispatch, and all
|
|
783
|
+
- **[ACP support](https://agentclientprotocol.com/)** — Agent Client Protocol integration. Run SoulForge as a coding agent inside Zed, JetBrains, Neovim (agentic.nvim), or any ACP-compatible editor. Headless mode already covers 80% of the protocol surface — `sf --acp` would expose graph intelligence, multi-agent dispatch, and all 33 tools via JSON-RPC 2.0 over stdio
|
|
779
784
|
|
|
780
785
|
**Planned:**
|
|
781
786
|
- **Monorepo graph support** — cross-package dependency tracking for pnpm/npm/yarn workspaces, Cargo workspaces, Go workspaces (`go.work`), Nx/Turborepo, and Bazel/Buck. Currently the repo map treats each workspace root as an isolated unit — cross-package imports resolve as external dependencies instead of internal edges. This means PageRank, blast radius, and unused export detection don't span package boundaries.
|