@heretek-ai/epistemic-swarm 0.7.9 → 0.7.11
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/.agents/skills/factory/SKILL.md +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/.omp/README.md +1 -1
- package/.omp/SYSTEM.md +8 -3
- package/MARKETPLACE.md +3 -2
- package/README.md +189 -63
- package/package.json +6 -3
- package/plugins/antigravity/README.md +1 -1
- package/plugins/antigravity/plugin.json +3 -1
- package/plugins/antigravity/skills/factory/SKILL.md +1 -1
- package/plugins/codex/README.md +1 -1
- package/plugins/codex/skills/factory/SKILL.md +1 -1
- package/plugins/gemini/GEMINI.md +5 -4
- package/plugins/gemini/README.md +2 -1
- package/plugins/gemini/skills/factory/SKILL.md +1 -1
- package/plugins/research-cache/skills/research_cache/SKILL.md +2 -2
- package/prompts/agent_alpha_thesis.md +1 -1
- package/prompts/agent_beta_antithesis.md +1 -1
- package/prompts/agent_brainstormer.md +7 -4
- package/runner/__pycache__/__init__.cpython-311.pyc +0 -0
- package/runner/__pycache__/auctioneer.cpython-311.pyc +0 -0
- package/runner/__pycache__/auditor_engine.cpython-311.pyc +0 -0
- package/runner/__pycache__/claim_store.cpython-311.pyc +0 -0
- package/runner/__pycache__/claim_witness.cpython-311.pyc +0 -0
- package/runner/__pycache__/living_dossiers.cpython-311.pyc +0 -0
- package/runner/__pycache__/mcp_protocol.cpython-311.pyc +0 -0
- package/runner/__pycache__/mcp_server.cpython-311.pyc +0 -0
- package/runner/__pycache__/path_safety.cpython-311.pyc +0 -0
- package/runner/__pycache__/pcrb.cpython-311.pyc +0 -0
- package/runner/__pycache__/pcrb_verify.cpython-311.pyc +0 -0
- package/runner/__pycache__/refinement.cpython-311.pyc +0 -0
- package/runner/__pycache__/research_swarm.cpython-311.pyc +0 -0
- package/runner/__pycache__/state_machine.cpython-311.pyc +0 -0
- package/runner/pcrb.py +4 -2
- package/runner/research_swarm.py +232 -31
- package/runner/state_machine.py +186 -65
- package/runner/tests/__pycache__/test_auction_order.cpython-311.pyc +0 -0
- package/runner/tests/__pycache__/test_backends.cpython-311.pyc +0 -0
- package/runner/tests/__pycache__/test_bet1_spike.cpython-311.pyc +0 -0
- package/runner/tests/__pycache__/test_claim_store.cpython-311.pyc +0 -0
- package/runner/tests/__pycache__/test_claim_witness.cpython-311.pyc +0 -0
- package/runner/tests/__pycache__/test_claude_plugin.cpython-311.pyc +0 -0
- package/runner/tests/__pycache__/test_domain_packs.cpython-311.pyc +0 -0
- package/runner/tests/__pycache__/test_dossier_contract.cpython-311.pyc +0 -0
- package/runner/tests/__pycache__/test_factory.cpython-311.pyc +0 -0
- package/runner/tests/__pycache__/test_fleet_seam.cpython-311.pyc +0 -0
- package/runner/tests/__pycache__/test_living_dossiers.cpython-311.pyc +0 -0
- package/runner/tests/__pycache__/test_manifest_concurrency.cpython-311.pyc +0 -0
- package/runner/tests/__pycache__/test_mcp_server.cpython-311.pyc +0 -0
- package/runner/tests/__pycache__/test_opencode_ux.cpython-311.pyc +0 -0
- package/runner/tests/__pycache__/test_opencode_v2_registrars.cpython-311.pyc +0 -0
- package/runner/tests/__pycache__/test_pcrb.cpython-311.pyc +0 -0
- package/runner/tests/__pycache__/test_refinement.cpython-311.pyc +0 -0
- package/runner/tests/__pycache__/test_swarm.cpython-311.pyc +0 -0
- package/runner/tests/__pycache__/test_swarm_config.cpython-311.pyc +0 -0
- package/runner/tests/__pycache__/test_sweep_regressions.cpython-311.pyc +0 -0
- package/runner/tests/__pycache__/test_webcache.cpython-311.pyc +0 -0
- package/runner/tests/test_backends.py +20 -1
- package/runner/tests/test_dossier_contract.py +196 -0
- package/runner/tests/test_manifest_concurrency.py +187 -0
- package/scripts/__pycache__/bet1_advisory_spike.cpython-311.pyc +0 -0
- package/scripts/__pycache__/build_adapters.cpython-311.pyc +0 -0
- package/scripts/__pycache__/divergence_experiment.cpython-311.pyc +0 -0
- package/scripts/build_adapters.py +1 -5
- package/skills/brainstorming/SKILL.md +1 -1
- package/skills/epistemic_search/scripts/__pycache__/search.cpython-311.pyc +0 -0
- package/skills/research_cache/SKILL.md +2 -2
- package/skills/research_cache/__pycache__/__init__.cpython-311.pyc +0 -0
- package/skills/research_cache/__pycache__/hasher.cpython-311.pyc +0 -0
- package/skills/swarm_config/SKILL.md +2 -2
- package/skills/swarm_config/__pycache__/__init__.cpython-311.pyc +0 -0
- package/skills/swarm_config/__pycache__/configure.cpython-311.pyc +0 -0
|
@@ -6,7 +6,7 @@ discovery finds an entry; the real skill lives in the IUMBTEMS repo.
|
|
|
6
6
|
- Canonical prose & scripts: `skills/factory/`
|
|
7
7
|
- Canonical programmatic surface: `python3 runner/mcp_server.py` (stdio MCP),
|
|
8
8
|
or one-shot: `python3 runner/mcp_server.py call <tool> '{...json...}'`
|
|
9
|
-
- MCP tools for this skill: `
|
|
9
|
+
- MCP tools for this skill: `iumbtems_factory`
|
|
10
10
|
|
|
11
11
|
Epistemic rules apply regardless of harness: tag claims as
|
|
12
12
|
`[VERIFIED: <hash>]`, `[INFERRED: <reasoning>]`, `[HYPOTHESIS: <test>]`, or
|
package/.omp/README.md
CHANGED
|
@@ -29,7 +29,7 @@ tail -F ~/.omp/logs/omp.$(date +%F).log # extension load errors land here, not
|
|
|
29
29
|
.omp/
|
|
30
30
|
├── README.md # this file
|
|
31
31
|
├── SYSTEM.md # project system-prompt override (safe subset of base_epistemic_system.md)
|
|
32
|
-
├── commands/*.md # reusable slash commands: /swarm /grill /audit /scout /brainstorming /swarm-config
|
|
32
|
+
├── commands/*.md # reusable slash commands: /swarm /grill /audit /scout /brainstorming /darkharvest /factory /domainexpansion /swarm-config
|
|
33
33
|
├── prompts/*.md # prompt templates with `description:` frontmatter + $1/$@ expansion
|
|
34
34
|
└── hooks/pre/*.ts # pre-tool hooks (epistemic redirect)
|
|
35
35
|
└── hooks/post/*.ts # post-tool hooks (audit-trail log)
|
package/.omp/SYSTEM.md
CHANGED
|
@@ -5,8 +5,13 @@ You operate under the Epistemic Integrity Protocol (see `prompts/base_epistemic_
|
|
|
5
5
|
- Parametric memory is quarantined. Fetch, verify, then assert.
|
|
6
6
|
- Tag every factual claim: `[VERIFIED:<hash>]`, `[INFERRED:<chain>]`, `[HYPOTHESIS:<falsification>]`, `[NEGATIVE_KNOWLEDGE:<query>]`.
|
|
7
7
|
- Cache every source to `.research/sources/<sha256>.md` before citing
|
|
8
|
-
(`python3 skills/
|
|
9
|
-
- Skills: `skills/{grilling,research_cache,epistemic_search,swarm_config,code_audit,oss_scout,brainstorming}/SKILL.md`.
|
|
8
|
+
(`python3 skills/research_cache/hasher.py cache --url "<URL>" --content "$(cat file.md)"`).
|
|
9
|
+
- Skills: `skills/{grilling,research_cache,epistemic_search,swarm_config,code_audit,oss_scout,brainstorming,darkharvest,factory}/SKILL.md`.
|
|
10
10
|
- Runners (Bun/Python kernels may call back into agent tools read/search/task):
|
|
11
|
-
`python3 runner/research_swarm.py --mode <research|audit|scout|hybrid|brainstorm> --objective "<...>"`.
|
|
11
|
+
`python3 runner/research_swarm.py --mode <research|audit|scout|hybrid|brainstorm|darkharvest> --objective "<...>"`.
|
|
12
|
+
- Backends are host-native by default: `claude -p` on Claude Code, `opencode run` on
|
|
13
|
+
OpenCode (via `IUMBTEMS_HOST`). Override with `--backend {auto,claude,opencode}`,
|
|
14
|
+
`IUMBTEMS_BACKEND_<ROLE>`, or `.research/config.json` `agents.<role>.backend`.
|
|
15
|
+
- Evidence lives under `.research/`: dossiers in `.research/scratchpads/<scope_id>/`,
|
|
16
|
+
content-addressed sources in `.research/sources/`.
|
|
12
17
|
- `/brainstorming` MUST produce feature vectors + lateral moves + falsifiable spikes, never bug-fix lists.
|
package/MARKETPLACE.md
CHANGED
|
@@ -40,7 +40,8 @@ claude plugin marketplace list
|
|
|
40
40
|
### 1. `epistemic-swarm` (Flagship Harness)
|
|
41
41
|
- **Manifest**: [`.claude-plugin/plugin.json`](file:///.claude-plugin/plugin.json)
|
|
42
42
|
- **Components**:
|
|
43
|
-
- **Skills
|
|
43
|
+
- **Skills** (9): `skills/grilling`, `skills/research_cache`, `skills/epistemic_search`, `skills/swarm_config`, `skills/code_audit`, `skills/oss_scout`, `skills/brainstorming`, `skills/darkharvest`, `skills/factory`
|
|
44
|
+
- **Agent Tools** (MCP): `iumbtems_swarm_research`, `iumbtems_code_audit`, `iumbtems_oss_scout`, `iumbtems_brainstorm`, `iumbtems_darkharvest`, `iumbtems_factory`, `iumbtems_config`, `iumbtems_verify_quote`, `iumbtems_socratic_frontier`, plus the brief/ledger/domain-pack tools (`export_brief`, `verify_brief`, `reindex_claims`, `report_retraction`, `check_staleness`, `set_domain_pack`)
|
|
44
45
|
- **Hooks**: `hooks/hooks.json` (`PreToolUse` hook intercepting ungrounded `WebSearch` and `WebFetch` to enforce verifiable SHA-256 caching)
|
|
45
46
|
- **Zero-Key Search**: DuckDuckGo Lite search and automated content-addressed document caching out of the box (zero API key required).
|
|
46
47
|
- **Safe MCP Servers & Accelerators**:
|
|
@@ -68,7 +69,7 @@ claude plugin marketplace list
|
|
|
68
69
|
### 3. `research-cache` (Modular Tool)
|
|
69
70
|
- **Manifest**: [`plugins/research-cache/.claude-plugin/plugin.json`](file:///plugins/research-cache/.claude-plugin/plugin.json)
|
|
70
71
|
- **Components**:
|
|
71
|
-
- **Skill & Engine**: `skills/research-cache`
|
|
72
|
+
- **Skill & Engine**: `skills/research_cache` (published under the plugin id `research-cache`) — content-addressed SHA-256 raw source storage and verbatim quote validation.
|
|
72
73
|
- **Install**:
|
|
73
74
|
```bash
|
|
74
75
|
claude plugin install research-cache@heretek-official
|
package/README.md
CHANGED
|
@@ -11,13 +11,23 @@
|
|
|
11
11
|
|
|
12
12
|
---
|
|
13
13
|
|
|
14
|
+
## 🏷️ Naming
|
|
15
|
+
|
|
16
|
+
Two names appear throughout this project, and they are not interchangeable:
|
|
17
|
+
|
|
18
|
+
| Name | What it is |
|
|
19
|
+
| :--- | :--- |
|
|
20
|
+
| **IUMBTEMS** | The project and brand ("I Use My Brain To Express My Self"). Repo: [`Heretek-AI/IUMBTEMS`](https://github.com/Heretek-AI/IUMBTEMS). |
|
|
21
|
+
| **Epistemic Swarm** | The technical/product name of the harness. Ships as the npm package [`@heretek-ai/epistemic-swarm`](https://www.npmjs.com/package/@heretek-ai/epistemic-swarm), the Claude Code plugin `epistemic-swarm@heretek-official`, and the `iumbtems` / `epistemic-swarm` binaries. |
|
|
22
|
+
|
|
14
23
|
## 💡 The Philosophy of IUMBTEMS
|
|
15
24
|
|
|
16
|
-
**IUMBTEMS**
|
|
25
|
+
**IUMBTEMS** is grounded in a singular design mandate: **Epistemic Sovereignty**.
|
|
17
26
|
|
|
18
27
|
Modern LLMs suffer from parametric hallucination, sycophancy, and premature narrative consensus. They invent citations, smooth over technical contradictions, and extrapolate beyond empirical bounds.
|
|
19
28
|
|
|
20
|
-
**IUMBTEMS** restores rigorous empirical grounding by pairing an unconstrained divergent exploration phase (
|
|
29
|
+
**IUMBTEMS** restores rigorous empirical grounding by pairing an unconstrained divergent exploration phase (Socratic grilling and assumption inversion) with a multi-agent dialectic swarm:
|
|
30
|
+
|
|
21
31
|
1. **Agent Alpha (The Proponent / Thesis)**: Gathers corroborating primary sources, empirical proofs, and implementation benchmarks.
|
|
22
32
|
2. **Agent Beta (The Adversary / Antithesis / Red Team)**: Hunts for counter-arguments, retracted data, methodology flaws, and edge-case failures.
|
|
23
33
|
3. **Epistemic Auditor**: Verifies cited quotes verbatim against content-addressed raw markdown caches (`.research/sources/<sha256>.md`), prunes ungrounded assertions, and scores dialectic divergence.
|
|
@@ -26,8 +36,7 @@ Modern LLMs suffer from parametric hallucination, sycophancy, and premature narr
|
|
|
26
36
|
|
|
27
37
|
## 🌐 Universal Multi-Platform Support
|
|
28
38
|
|
|
29
|
-
IUMBTEMS is packaged as a single universal npm package
|
|
30
|
-
Single source of truth: `skills/*` + `prompts/*`. The canonical programmatic surface is the first-party MCP server (`python3 runner/mcp_server.py`), which exposes the `iumbtems_*` tools in-process. Harness targets register that server and carry only thin skill stubs generated with `python3 scripts/build_adapters.py` (`iumbtems adapters`) into `plugins/*`, `.agents/skills` — stubs point at the canonical `skills/*` prose instead of copying code.
|
|
39
|
+
IUMBTEMS is packaged as a single universal npm package that runs across seven autonomous agent harnesses. Single source of truth: `skills/*` + `prompts/*`. The canonical programmatic surface is the first-party MCP server (`python3 runner/mcp_server.py`), which exposes the `iumbtems_*` tools. Harness targets register that server and carry only thin skill stubs generated with `python3 scripts/build_adapters.py` (`iumbtems adapters`) into `plugins/*` and `.agents/skills`.
|
|
31
40
|
|
|
32
41
|
### 1. Claude Code (Native Marketplace & Overlay)
|
|
33
42
|
|
|
@@ -44,6 +53,8 @@ claude plugin install epistemic-swarm@heretek-official
|
|
|
44
53
|
# Or install standalone modular plugins:
|
|
45
54
|
claude plugin install socratic-grilling@heretek-official
|
|
46
55
|
claude plugin install research-cache@heretek-official
|
|
56
|
+
claude plugin install darkharvest@heretek-official
|
|
57
|
+
claude plugin install factory@heretek-official
|
|
47
58
|
```
|
|
48
59
|
See [MARKETPLACE.md](MARKETPLACE.md) for full component specifications.
|
|
49
60
|
|
|
@@ -51,7 +62,7 @@ See [MARKETPLACE.md](MARKETPLACE.md) for full component specifications.
|
|
|
51
62
|
Install skills and MCP servers directly into `~/.claude/` and `~/.claude.json`:
|
|
52
63
|
```bash
|
|
53
64
|
npx @heretek-ai/epistemic-swarm install
|
|
54
|
-
# or from local
|
|
65
|
+
# or from a local clone:
|
|
55
66
|
npm run install-local
|
|
56
67
|
```
|
|
57
68
|
- Run `/grilling` inside any interactive Claude Code session.
|
|
@@ -61,22 +72,14 @@ npm run install-local
|
|
|
61
72
|
```
|
|
62
73
|
|
|
63
74
|
### 2. Pi (`pi.dev`)
|
|
64
|
-
Install directly into Pi via its native package manager:
|
|
65
75
|
```bash
|
|
66
76
|
pi install npm:@heretek-ai/epistemic-swarm
|
|
67
77
|
```
|
|
68
|
-
- **Slash Commands**:
|
|
69
|
-
|
|
70
|
-
- `/grill`: Launch Socratic assumption-inversion and decision trees
|
|
71
|
-
- `/swarm-config`: Inspect or tune search engine, depth (1-4), and mode
|
|
72
|
-
- `/audit <target>`: Run dialectic codebase architecture and security audit
|
|
73
|
-
- `/scout <feature>`: Scout open-source software and clean-room blueprints
|
|
74
|
-
- **Agent Tools**: `iumbtems_config`, `iumbtems_verify_quote`, `iumbtems_brainstorm`.
|
|
75
|
-
- OMP (`omp.sh`, oh-my-pi) shares the same entry point: `omp install npm:@heretek-ai/epistemic-swarm`, project commands in `.omp/commands/` (`/swarm`, `/grill`, `/audit`, `/scout`, `/brainstorming`, `/swarm-config`), prompts in `.omp/prompts/`, hooks in `.omp/hooks/pre|post/`.
|
|
76
|
-
- All commands automatically respect `.research/config.json`.
|
|
78
|
+
- **Slash Commands**: `/swarm`, `/grill`, `/swarm-config`, `/audit`, `/scout`, `/brainstorming`, `/darkharvest`, `/factory`, `/domainexpansion`.
|
|
79
|
+
- **Agent Tools**: the full `iumbtems_*` MCP surface (see [MCP Tool Reference](#-mcp-tool-reference)).
|
|
77
80
|
|
|
78
81
|
### 3. OpenCode V2 ([opencode.ai/v2/docs](https://opencode.ai/v2/docs))
|
|
79
|
-
Enable IUMBTEMS in
|
|
82
|
+
Enable IUMBTEMS in `~/.config/opencode/opencode.jsonc` or a project `opencode.jsonc`:
|
|
80
83
|
```jsonc
|
|
81
84
|
{
|
|
82
85
|
"$schema": "https://opencode.ai/config.json",
|
|
@@ -92,26 +95,21 @@ Enable IUMBTEMS in your `~/.config/opencode/opencode.jsonc` or project `opencode
|
|
|
92
95
|
]
|
|
93
96
|
}
|
|
94
97
|
```
|
|
95
|
-
OpenCode V2
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
- `iumbtems_oss_scout`: Scouts open-source libraries, audits licenses, and builds clean-room blueprints.
|
|
99
|
-
- `iumbtems_swarm_research`: Dispatches dialectic researcher pairs (Thesis vs. Antithesis).
|
|
100
|
-
- `iumbtems_verify_quote`: Audits verbatim citations against the SHA-256 source cache.
|
|
101
|
-
- `iumbtems_socratic_frontier`: Advances the Socratic decision tree frontier.
|
|
102
|
-
- `iumbtems_brainstorm`: Lateral ideation portfolio (feature vectors + paradigm moves + falsifiable spikes).
|
|
98
|
+
The plugin registers through OpenCode V2's transform domains at setup — `tool.transform` and `command.transform` (catalog), `agent.transform` (the shipped role profiles), and `skill.transform` (bundled `skills/*/SKILL.md`) — so no config-snippet install step is required. Agent profiles are registered with `AgentEditor.update` (V2 has no `add()`).
|
|
99
|
+
|
|
100
|
+
Slash commands: `/swarm`, `/grill`, `/swarm-config`, `/audit`, `/scout`, `/brainstorming` (alias `/brainstorm`), `/darkharvest`, `/factory`, `/domainexpansion`.
|
|
103
101
|
|
|
104
|
-
*(See [config/opencode-snippet.json](config/opencode-snippet.json) for
|
|
102
|
+
*(See [config/opencode-snippet.json](config/opencode-snippet.json) for the agent definitions.)*
|
|
105
103
|
|
|
106
104
|
### 4. Gemini CLI
|
|
107
105
|
```bash
|
|
108
106
|
gemini extensions install https://github.com/Heretek-AI/IUMBTEMS --path plugins/gemini
|
|
109
107
|
# local dev: gemini extensions link ./plugins/gemini
|
|
110
108
|
```
|
|
111
|
-
Bundle: `plugins/gemini/gemini-extension.json` (MCP servers
|
|
109
|
+
Bundle: `plugins/gemini/gemini-extension.json` (manifest + MCP servers), `GEMINI.md` (context), `commands/*.toml` (`/swarm`, `/grill`, `/audit`, `/scout`, `/brainstorming`, `/darkharvest`, `/factory`, `/domainexpansion`, `/swarm-config`), `hooks/hooks.json`, `skills/` thin stubs.
|
|
112
110
|
|
|
113
111
|
### 5. Codex CLI
|
|
114
|
-
Codex reads repo-local `.agents/skills/*` (
|
|
112
|
+
Codex reads repo-local `.agents/skills/*` (generated in this repo) — `$brainstorming <prompt>` or implicit activation. Distributable pack in `plugins/codex/` (`openai.yaml`, `config.toml.snippet` for `[mcp_servers.*]`, `AGENTS.md.snippet`). Legacy `~/.codex/prompts/*.md` (`/prompts:<name>`) is deprecated; use skills.
|
|
115
113
|
|
|
116
114
|
### 6. Google AntiGravity (`agy`)
|
|
117
115
|
```bash
|
|
@@ -124,14 +122,49 @@ Bundle: `plugins/antigravity/plugin.json`, `mcp_config.json`, `hooks.json`, `ski
|
|
|
124
122
|
```bash
|
|
125
123
|
omp install npm:@heretek-ai/epistemic-swarm
|
|
126
124
|
```
|
|
127
|
-
Shares the
|
|
125
|
+
Shares the Pi extension entry point (`package.json: {omp, pi}` blocks). Project-local slash commands (`.omp/commands/*.md`), prompt templates (`.omp/prompts/*.md`), hooks (`.omp/hooks/pre|post/*.ts`), system override (`.omp/SYSTEM.md`).
|
|
126
|
+
|
|
127
|
+
---
|
|
128
|
+
|
|
129
|
+
## 🔌 Agent Runtime Backends
|
|
130
|
+
|
|
131
|
+
Agent work runs on whichever harness invoked it — **host-native by default**:
|
|
132
|
+
|
|
133
|
+
| Host | Default backend |
|
|
134
|
+
| :--- | :--- |
|
|
135
|
+
| Claude Code | `claude -p` |
|
|
136
|
+
| OpenCode V2 | `opencode run` (selected via `IUMBTEMS_HOST=opencode`) |
|
|
137
|
+
| Manual CLI run | `claude -p`, or `opencode run` when `claude` is absent from `PATH` |
|
|
138
|
+
|
|
139
|
+
Override, highest precedence first:
|
|
140
|
+
|
|
141
|
+
1. `--backend {auto,claude,opencode}` (CLI) / `backend` argument (MCP tools)
|
|
142
|
+
2. `IUMBTEMS_BACKEND_ALPHA` / `IUMBTEMS_BACKEND_BETA` (and `IUMBTEMS_MODEL_<ROLE>`)
|
|
143
|
+
3. `.research/config.json` → `agents.<role>.backend` / `agents.<role>.model`
|
|
144
|
+
4. Host-native default
|
|
145
|
+
|
|
146
|
+
Related environment variables:
|
|
147
|
+
|
|
148
|
+
| Variable | Purpose |
|
|
149
|
+
| :--- | :--- |
|
|
150
|
+
| `IUMBTEMS_HOST` | Host hint (`claude` / `opencode`); set automatically by the OpenCode plugin. |
|
|
151
|
+
| `IUMBTEMS_BACKEND_<ROLE>` / `IUMBTEMS_MODEL_<ROLE>` | Per-role backend argv / model override (e.g. `IUMBTEMS_BACKEND_BETA=opencode`). |
|
|
152
|
+
| `IUMBTEMS_AGENT_CWD` | Working directory for spawned agents: `project` (default), `package`, or an absolute path. |
|
|
153
|
+
| `IUMBTEMS_PROJECT_DIR` | Project root used to resolve the `.research/` workspace (set by the OpenCode plugin; wins over the process cwd). |
|
|
154
|
+
| `IUMBTEMS_PCRB_KEY` | HMAC key for proof-carrying brief signing/verification. |
|
|
155
|
+
| `IUMBTEMS_FETCH_TTL_DAYS` / `IUMBTEMS_FETCH_MAX_INLINE` | Fetch-cache TTL and inline size cap (bytes). |
|
|
156
|
+
| `IUMBTEMS_TOOL_NAMES` | Override the projected tool-name list. |
|
|
157
|
+
|
|
158
|
+
Spawned agents inherit `PWD` set to their working directory, so harnesses that resolve their project root from `$PWD` (OpenCode) land in the same tree the runner reads from.
|
|
159
|
+
|
|
160
|
+
> **Legacy config migration:** configs written before 0.7.6 could pin `agents.<role>.backend = ["claude", "-p"]`, which silently overrode the host-native default. That pin is now migrated to `null` on load (only when the top-level `backend` is not an explicit `"claude"`), and the migration is persisted by `iumbtems config`. To deliberately keep Claude on an OpenCode host, set `"backend": "claude"`.
|
|
128
161
|
|
|
129
162
|
---
|
|
130
163
|
|
|
131
164
|
## ⚡ CLI Command Reference
|
|
132
165
|
|
|
133
166
|
```bash
|
|
134
|
-
# Inspect or update active configuration (search engine, depth, mode)
|
|
167
|
+
# Inspect or update active configuration (search engine, depth, mode, backend)
|
|
135
168
|
iumbtems config
|
|
136
169
|
iumbtems config --engine duckduckgo --depth 3 --mode audit
|
|
137
170
|
|
|
@@ -148,82 +181,175 @@ iumbtems run "Sub-millisecond ZK state updates on L1 rollups"
|
|
|
148
181
|
iumbtems brainstorm "Where do we go from here?"
|
|
149
182
|
|
|
150
183
|
# Product competitor teardown with per-feature harvest verdicts
|
|
151
|
-
iumbtems darkharvest "Paseo-class agent harness competitor" --seeds https://github.com/a/b,https://github.com/c/d --max-repos 6
|
|
184
|
+
iumbtems darkharvest "Paseo-class agent harness competitor" --seeds https://github.com/a/b,https://github.com/c/d --max-repos 6
|
|
152
185
|
|
|
153
|
-
# Coding-factory run-state helper
|
|
186
|
+
# Coding-factory run-state helper
|
|
154
187
|
iumbtems factory init --run arena
|
|
155
188
|
iumbtems factory phase-add --run arena --phase 01-handoff --goal "Session handoff" --accept "round-trips;STOP kills loop"
|
|
156
|
-
iumbtems factory
|
|
157
|
-
|
|
158
|
-
|
|
189
|
+
iumbtems factory qa-record --run arena --phase 01-handoff --seat qa-a --verdict pass
|
|
190
|
+
iumbtems factory expansion --run arena --loops 10 --max-loops 10
|
|
191
|
+
iumbtems factory stop --run arena # writes .factory/STOP kill-file
|
|
159
192
|
|
|
160
|
-
#
|
|
193
|
+
# Socratic grilling and decision-frontier calculation
|
|
161
194
|
iumbtems grill --objective "L1 vs L2 state verification trade-offs"
|
|
162
195
|
|
|
163
|
-
#
|
|
164
|
-
iumbtems
|
|
196
|
+
# Rebuild harness adapter mirrors (skills -> plugins/*, .agents/skills)
|
|
197
|
+
iumbtems adapters
|
|
165
198
|
|
|
166
|
-
#
|
|
167
|
-
iumbtems
|
|
199
|
+
# Other utility commands
|
|
200
|
+
iumbtems install # install skills & MCP servers into ~/.claude/
|
|
201
|
+
iumbtems marketplace # print the Claude Code marketplace catalog
|
|
202
|
+
iumbtems doctor # check environment requirements
|
|
203
|
+
iumbtems test # run the automated test suite
|
|
204
|
+
iumbtems help # full usage text
|
|
168
205
|
```
|
|
169
206
|
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
207
|
+
Common options: `--mock-claude` (synthetic responses, zero API cost), `--frontier <file>` (settled `frontier.json`), `--mode <research|audit|scout|hybrid|brainstorm|darkharvest>`, `--engine <duckduckgo|brave|firecrawl|searxng>`, `--depth <1-4>`, `--backend <auto|claude|opencode>`, `--dir <path>`.
|
|
208
|
+
|
|
209
|
+
The `epistemic-swarm` binary is an alias of `iumbtems`.
|
|
210
|
+
|
|
211
|
+
---
|
|
212
|
+
|
|
213
|
+
## 🧰 MCP Tool Reference
|
|
214
|
+
|
|
215
|
+
The canonical MCP server (`python3 runner/mcp_server.py`, stdio) exposes these tools to every harness:
|
|
216
|
+
|
|
217
|
+
| Tool | Purpose |
|
|
218
|
+
| :--- | :--- |
|
|
219
|
+
| `iumbtems_config` | Inspect or adjust active parameters in `.research/config.json` (search engine, depth, mode, backend, per-agent backends). |
|
|
220
|
+
| `iumbtems_swarm_research` | Dispatch the dialectic researcher pair (Alpha thesis vs Beta antithesis) with epistemic auditing. Long-running; blocks until complete. |
|
|
221
|
+
| `iumbtems_code_audit` | Dialectic codebase review: structural architect vs vulnerability red-team. |
|
|
222
|
+
| `iumbtems_oss_scout` | Scout open-source libraries, audit licenses, and build clean-room blueprints. |
|
|
223
|
+
| `iumbtems_brainstorm` | Lateral ideation portfolio: feature vectors, paradigm moves, falsifiable spikes. Never bug fixes. |
|
|
224
|
+
| `iumbtems_darkharvest` | Product competitor teardown with per-feature `depend\|vendor\|clean-room\|skip` verdicts and SPDX attribution. |
|
|
225
|
+
| `iumbtems_factory` | Drive factory run state: `init` / `phase-add` / `qa-record` / `expansion` / `stop`. State in `<project>/.factory` and `.roadmap`. |
|
|
226
|
+
| `iumbtems_verify_quote` | Audit a verbatim citation against the SHA-256 source cache (`.research/sources/<hash>.md`). |
|
|
227
|
+
| `iumbtems_socratic_frontier` | Inspect or advance the Socratic decision-tree frontier (`.research/frontier.json`). |
|
|
228
|
+
| `iumbtems_export_brief` | Export a proof-carrying research brief (PCRB): a self-contained signed bundle of synthesis, claims, quote witnesses, and full source texts. |
|
|
229
|
+
| `iumbtems_verify_brief` | Verify a PCRB against its bundled sources: manifest integrity, HMAC signature, and every quote re-checked. Exit-fail semantics — no trust in the producing LLM. |
|
|
230
|
+
| `iumbtems_reindex_claims` | Rebuild the derived `claims.sqlite` index from `.research` flat files (idempotent; flat files are the source of truth). |
|
|
231
|
+
| `iumbtems_report_retraction` | Record a RETRACTED/REVISED event for a cached source; dependent `VERIFIED` claims degrade to STALE/SUSPECT on the next audit. |
|
|
232
|
+
| `iumbtems_check_staleness` | One claim-degradation pass: join claims against retraction events, write the status ledger, queue re-runs for degraded scopes. Never mutates dossiers. |
|
|
233
|
+
| `iumbtems_set_domain_pack` | Activate a Regulated Domain Pack (`biopharma` / `quant` / `legal` epistemic constitution) for subsequent audits. |
|
|
234
|
+
|
|
235
|
+
---
|
|
236
|
+
|
|
237
|
+
## 🎯 Skills & Slash Commands
|
|
238
|
+
|
|
239
|
+
Nine canonical skills live in `skills/*/SKILL.md`. Each maps to a slash command on harnesses that support them and to the MCP tool that carries its programmatic surface.
|
|
240
|
+
|
|
241
|
+
| Skill | Slash | Surface |
|
|
242
|
+
| :--- | :--- | :--- |
|
|
243
|
+
| `grilling` | `/grill` | `iumbtems_socratic_frontier` |
|
|
244
|
+
| `research_cache` | — | `iumbtems_verify_quote` |
|
|
245
|
+
| `epistemic_search` | — | research MCP servers (`brave-search`, `firecrawl`, `searxng`) |
|
|
246
|
+
| `swarm_config` | `/swarm-config` | `iumbtems_config` |
|
|
247
|
+
| `code_audit` | `/audit` | `iumbtems_code_audit` |
|
|
248
|
+
| `oss_scout` | `/scout` | `iumbtems_oss_scout` |
|
|
249
|
+
| `brainstorming` | `/brainstorming` | `iumbtems_brainstorm` |
|
|
250
|
+
| `darkharvest` | `/darkharvest` | `iumbtems_darkharvest` |
|
|
251
|
+
| `factory` | `/factory` | `iumbtems_factory` |
|
|
252
|
+
|
|
253
|
+
- **`/swarm-config`**: Interactive tuning of search engines (DuckDuckGo, Brave, Firecrawl, SearXNG), iteration depth, divergence threshold, backend, and operating mode.
|
|
254
|
+
- **`/audit`**: Dialectic codebase review pairing a Structural Architect (thesis) with a Vulnerability Red-Teamer (antithesis) enforcing line-number proofs (`file:///path#L10-25`).
|
|
255
|
+
- **`/scout`**: Evaluates GitHub repositories and package ecosystems (npm, crates.io, PyPI), license contamination (GPL/AGPL copyleft vs MIT/Apache), and outputs clean-room re-implementation blueprints.
|
|
174
256
|
- **`/darkharvest`**: Product competitor teardown (seed inspirations + prompt, expand to adjacents). Competitor × capability matrix, both-ways white-space gaps, per-feature `depend|vendor|clean-room-rebuild|skip` verdicts with SPDX attribution. Permissive-only vendoring; GPL/AGPL spec-rebuild only.
|
|
175
|
-
- **`/factory`**: Coding-factory Manager loop — grill-gated phased build
|
|
257
|
+
- **`/factory`**: Coding-factory Manager loop — grill-gated phased build, per-phase programmer spawns, dual QA (3 failures then escalate), explicit sign-off per phase.
|
|
176
258
|
- **`/domainexpansion`**: Autonomous agent-guided self-improvement loop (`/domainexpansion <n>`, max 10); bypasses gates, stops on count OR `.factory/STOP` OR user kill.
|
|
177
|
-
- **`/grilling`**: Socratic assumption-inversion and
|
|
259
|
+
- **`/grilling`**: Socratic assumption-inversion and design-tree frontier discovery.
|
|
178
260
|
- **`epistemic_search`**: Zero-key DuckDuckGo Lite search and content-addressed fetch with automatic SHA-256 caching.
|
|
179
261
|
|
|
262
|
+
---
|
|
263
|
+
|
|
264
|
+
## 🗂️ Workspace & Evidence Model
|
|
265
|
+
|
|
266
|
+
All state lives in a local `.research/` directory (resolved from `IUMBTEMS_PROJECT_DIR` when set, else the process cwd):
|
|
267
|
+
|
|
268
|
+
```
|
|
269
|
+
.research/
|
|
270
|
+
├── config.json # active parameters (engine, depth, mode, backend, agents)
|
|
271
|
+
├── manifest.json # session metadata, scope DAG, status
|
|
272
|
+
├── frontier.json # settled Socratic decision frontier (input)
|
|
273
|
+
├── sources/ # content-addressed raw cache
|
|
274
|
+
│ ├── <sha256>.md # verbatim cleaned markdown
|
|
275
|
+
│ └── <sha256>.json # provenance: url, title, headers, timestamp, query
|
|
276
|
+
├── scratchpads/<scope_id>/ # per-scope dossiers
|
|
277
|
+
│ ├── alpha_dossier.json # proponent findings
|
|
278
|
+
│ ├── beta_dossier.json # adversary counter-evidence
|
|
279
|
+
│ ├── audit_report.json # quote-verification log, divergence score, trimmed claims
|
|
280
|
+
│ └── scope_synthesis.md
|
|
281
|
+
├── ledger/claim_status.json # Living Dossiers status ledger
|
|
282
|
+
├── requeue.json # scopes queued for re-run after degradation
|
|
283
|
+
├── claims.sqlite # derived claim index (rebuildable)
|
|
284
|
+
└── final_synthesis.md # master report
|
|
285
|
+
```
|
|
286
|
+
|
|
287
|
+
**Living Dossiers:** when a cached source is retracted or revised (`iumbtems_report_retraction`), dependent verified claims degrade to STALE/SUSPECT on the next `iumbtems_check_staleness` pass, and affected scopes are queued for re-run. Dossiers are never mutated in place.
|
|
288
|
+
|
|
289
|
+
**Proof-Carrying Research Briefs (PCRB):** `iumbtems_export_brief` emits a self-contained, HMAC-signed bundle (synthesis + claims + quote witnesses + full source texts); `iumbtems_verify_brief` re-checks every quote against the bundled sources with exit-fail semantics.
|
|
290
|
+
|
|
291
|
+
**Regulated Domain Packs:** `iumbtems_set_domain_pack` activates a stricter epistemic constitution for `biopharma`, `quant`, or `legal` audits.
|
|
180
292
|
|
|
181
293
|
---
|
|
182
294
|
|
|
183
295
|
## 🏷️ Epistemic Tagging Taxonomy
|
|
184
296
|
|
|
185
|
-
Every factual claim
|
|
297
|
+
Every factual claim carries an explicit evidentiary tag:
|
|
186
298
|
|
|
187
299
|
| Tag | Formal Definition | Verification Standard |
|
|
188
300
|
| :--- | :--- | :--- |
|
|
189
|
-
| `[VERIFIED: <hash>]` | Direct empirical fact from primary source. | Verbatim quote must exist in `.research/sources/<hash>.md`. |
|
|
301
|
+
| `[VERIFIED: <hash>]` | Direct empirical fact from a primary source. | Verbatim quote must exist in `.research/sources/<hash>.md`. |
|
|
190
302
|
| `[INFERRED: <reasoning>]` | Deductive conclusion from verified facts. | Explicit list of parent verified premises and bridging logic. |
|
|
191
303
|
| `[HYPOTHESIS: <test>]` | Speculative assertion or projection. | Must define a measurable falsification criterion. |
|
|
192
|
-
| `[NEGATIVE_KNOWLEDGE: <query>]` | Verified absence of empirical evidence. | Records exact search query and literature gap. |
|
|
304
|
+
| `[NEGATIVE_KNOWLEDGE: <query>]` | Verified absence of empirical evidence. | Records the exact search query and literature gap. |
|
|
193
305
|
|
|
194
306
|
---
|
|
195
307
|
|
|
196
308
|
## 🔍 Multi-Tier OSINT & Search Pipeline
|
|
197
309
|
|
|
198
|
-
1. **Discovery Tier**: SearXNG (
|
|
199
|
-
2. **Extraction Tier**: Firecrawl (headless JavaScript rendering, DOM cleaning, Markdown extraction).
|
|
310
|
+
1. **Discovery Tier**: DuckDuckGo Lite (zero-key default), SearXNG (self-hosted metasearch), Brave Search API.
|
|
311
|
+
2. **Extraction Tier**: Firecrawl (headless JavaScript rendering, DOM cleaning, Markdown extraction), with a clean readability fallback.
|
|
200
312
|
3. **Academic Tier**: Semantic Scholar / arXiv MCPs for DOI citation resolution.
|
|
201
313
|
4. **Caching Tier**: Content-addressed SHA-256 storage (`skills/research_cache/hasher.py`).
|
|
202
314
|
|
|
203
315
|
### Local Infrastructure (Optional)
|
|
204
|
-
Run local SearXNG and Firecrawl instances via Docker Compose:
|
|
205
316
|
```bash
|
|
206
|
-
docker compose -f config/docker-compose.infra.yml up -d
|
|
317
|
+
docker compose -f config/docker-compose.infra.yml up -d # local SearXNG + Firecrawl
|
|
207
318
|
```
|
|
208
319
|
|
|
209
320
|
---
|
|
210
321
|
|
|
211
|
-
##
|
|
322
|
+
## 🛠️ Repository Layout & Adapter Generation
|
|
212
323
|
|
|
213
|
-
|
|
324
|
+
- **Canonical prose/specs**: `skills/*/SKILL.md`, `prompts/*.md`, `docs/*.md`.
|
|
325
|
+
- **Canonical programmatic surface**: `runner/mcp_server.py`.
|
|
326
|
+
- **Generated — never hand-edit**: `plugins/{antigravity,gemini,codex}/skills/**`, `.agents/skills/**`, and the modular copies under `plugins/{research-cache,socratic-grilling,darkharvest,factory}/skills/**`.
|
|
214
327
|
|
|
215
|
-
|
|
328
|
+
Regenerate and verify:
|
|
216
329
|
```bash
|
|
217
|
-
|
|
218
|
-
|
|
330
|
+
python3 scripts/build_adapters.py # rebuild stubs + modular copies
|
|
331
|
+
python3 scripts/build_adapters.py --check # CI gate: fails on drift
|
|
332
|
+
python3 -m unittest discover -s runner/tests
|
|
219
333
|
```
|
|
220
334
|
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
335
|
+
`skills/research-cache` is a symlink to `skills/research_cache`, kept so the legacy hyphenated path resolves in a checkout (the Claude Code overlay installer creates the same alias under `~/.claude/skills/`).
|
|
336
|
+
|
|
337
|
+
---
|
|
338
|
+
|
|
339
|
+
## 📦 CI/CD & Trusted Publishing
|
|
340
|
+
|
|
341
|
+
The package is distributed on npm as `@heretek-ai/epistemic-swarm` using [npm Trusted Publishing (OIDC)](https://docs.npmjs.com/trusted-publishers) with GitHub Actions — no long-lived npm token.
|
|
342
|
+
|
|
343
|
+
**Release flow** (see [AGENTS.md](AGENTS.md#releases)):
|
|
344
|
+
|
|
345
|
+
1. Bump `package.json` **and** `.claude-plugin/plugin.json` **and** the lockfile in lockstep.
|
|
346
|
+
2. Commit and push to `main`.
|
|
347
|
+
3. `gh release create vX.Y.Z` — the `Publish to npm` workflow
|
|
348
|
+
(`.github/workflows/publish.yml`) runs on `release: published`, executes the
|
|
349
|
+
test suite, and publishes with provenance.
|
|
350
|
+
4. Verify: `curl https://registry.npmjs.org/@heretek-ai%2Fepistemic-swarm` (allow propagation time).
|
|
351
|
+
|
|
352
|
+
Manual `npm publish` is not part of the flow; the trusted publisher is bound to `Heretek-AI/IUMBTEMS` + `.github/workflows/publish.yml`.
|
|
227
353
|
|
|
228
354
|
---
|
|
229
355
|
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@heretek-ai/epistemic-swarm",
|
|
3
|
-
"version": "0.7.
|
|
4
|
-
"description": "IUMBTEMS
|
|
3
|
+
"version": "0.7.11",
|
|
4
|
+
"description": "IUMBTEMS (Epistemic Swarm) — High-Integrity Dialectic Research Agent Harness for Claude Code, OpenCode V2, Pi (pi.dev), OMP (oh-my-pi), Gemini CLI, Codex CLI, and AntiGravity",
|
|
5
5
|
"main": "bin/cli.js",
|
|
6
6
|
"bin": {
|
|
7
7
|
"iumbtems": "bin/cli.js",
|
|
@@ -32,6 +32,7 @@
|
|
|
32
32
|
"homepage": "https://github.com/Heretek-AI/IUMBTEMS#readme",
|
|
33
33
|
"keywords": [
|
|
34
34
|
"iumbtems",
|
|
35
|
+
"epistemic-swarm",
|
|
35
36
|
"i-use-my-brain-to-express-my-self",
|
|
36
37
|
"pi-package",
|
|
37
38
|
"omp-package",
|
|
@@ -66,7 +67,9 @@
|
|
|
66
67
|
"swarm-intelligence",
|
|
67
68
|
"code-audit",
|
|
68
69
|
"oss-scout",
|
|
69
|
-
"clean-room-engineering"
|
|
70
|
+
"clean-room-engineering",
|
|
71
|
+
"proof-carrying-briefs",
|
|
72
|
+
"living-dossiers"
|
|
70
73
|
],
|
|
71
74
|
"pi": {
|
|
72
75
|
"extensions": [
|
|
@@ -22,7 +22,7 @@ plugins/antigravity/
|
|
|
22
22
|
└── rules/ # workspace rules (epistemic integrity invariant)
|
|
23
23
|
```
|
|
24
24
|
|
|
25
|
-
Skills auto-promote to slash commands (`/grilling`, `/brainstorming`, ...).
|
|
25
|
+
Skills auto-promote to slash commands (`/grilling`, `/brainstorming`, `/darkharvest`, `/factory`, ...).
|
|
26
26
|
Set optional secrets via workspace settings / env:
|
|
27
27
|
`BRAVE_SEARCH_API_KEY`, `FIRECRAWL_API_KEY`, `FIRECRAWL_API_URL`, `SEARXNG_URL`.
|
|
28
28
|
Zero-key DuckDuckGo + readability fallback works with no keys.
|
|
@@ -6,7 +6,7 @@ discovery finds an entry; the real skill lives in the IUMBTEMS repo.
|
|
|
6
6
|
- Canonical prose & scripts: `skills/factory/`
|
|
7
7
|
- Canonical programmatic surface: `python3 runner/mcp_server.py` (stdio MCP),
|
|
8
8
|
or one-shot: `python3 runner/mcp_server.py call <tool> '{...json...}'`
|
|
9
|
-
- MCP tools for this skill: `
|
|
9
|
+
- MCP tools for this skill: `iumbtems_factory`
|
|
10
10
|
|
|
11
11
|
Epistemic rules apply regardless of harness: tag claims as
|
|
12
12
|
`[VERIFIED: <hash>]`, `[INFERRED: <reasoning>]`, `[HYPOTHESIS: <test>]`, or
|
package/plugins/codex/README.md
CHANGED
|
@@ -10,7 +10,7 @@ Codex auto-discovers `.agents/skills/*` from CWD up to repo root.
|
|
|
10
10
|
This repo ships generated mirrors there (see `scripts/build_adapters.py`):
|
|
11
11
|
|
|
12
12
|
```
|
|
13
|
-
.agents/skills/{grilling,research_cache,epistemic_search,swarm_config,code_audit,oss_scout,brainstorming}/SKILL.md
|
|
13
|
+
.agents/skills/{grilling,research_cache,epistemic_search,swarm_config,code_audit,oss_scout,brainstorming,darkharvest,factory}/SKILL.md
|
|
14
14
|
```
|
|
15
15
|
|
|
16
16
|
Invoke: `$brainstorming Where do we go from here?` or let Codex pick
|
|
@@ -6,7 +6,7 @@ discovery finds an entry; the real skill lives in the IUMBTEMS repo.
|
|
|
6
6
|
- Canonical prose & scripts: `skills/factory/`
|
|
7
7
|
- Canonical programmatic surface: `python3 runner/mcp_server.py` (stdio MCP),
|
|
8
8
|
or one-shot: `python3 runner/mcp_server.py call <tool> '{...json...}'`
|
|
9
|
-
- MCP tools for this skill: `
|
|
9
|
+
- MCP tools for this skill: `iumbtems_factory`
|
|
10
10
|
|
|
11
11
|
Epistemic rules apply regardless of harness: tag claims as
|
|
12
12
|
`[VERIFIED: <hash>]`, `[INFERRED: <reasoning>]`, `[HYPOTHESIS: <test>]`, or
|
package/plugins/gemini/GEMINI.md
CHANGED
|
@@ -8,8 +8,9 @@ You operate under the Epistemic Integrity Protocol
|
|
|
8
8
|
`[HYPOTHESIS:<falsification>]`, `[NEGATIVE_KNOWLEDGE:<query>]`.
|
|
9
9
|
- Cache every source to `.research/sources/<sha256>.md` before citing.
|
|
10
10
|
- Available skills: `grilling`, `research_cache`, `epistemic_search`,
|
|
11
|
-
`swarm_config`, `code_audit`, `oss_scout`, `brainstorming`
|
|
12
|
-
(see `skills/<name>/SKILL.md`).
|
|
13
|
-
- Runners: `python3 runner/research_swarm.py --mode <research|audit|scout|hybrid|brainstorm> --objective "<...>"`.
|
|
11
|
+
`swarm_config`, `code_audit`, `oss_scout`, `brainstorming`, `darkharvest`,
|
|
12
|
+
`factory` (see `skills/<name>/SKILL.md`).
|
|
13
|
+
- Runners: `python3 runner/research_swarm.py --mode <research|audit|scout|hybrid|brainstorm|darkharvest> --objective "<...>"`.
|
|
14
14
|
- Custom commands (`commands/*.toml`): `/swarm`, `/grill`, `/audit`,
|
|
15
|
-
`/scout`, `/brainstorming`, `/
|
|
15
|
+
`/scout`, `/brainstorming`, `/darkharvest`, `/factory`, `/domainexpansion`,
|
|
16
|
+
`/swarm-config`.
|
package/plugins/gemini/README.md
CHANGED
|
@@ -12,7 +12,8 @@ gemini extensions list
|
|
|
12
12
|
|
|
13
13
|
Contents: `gemini-extension.json` (manifest + MCP servers), `GEMINI.md`
|
|
14
14
|
(context loader), `commands/*.toml` (`/swarm`, `/grill`, `/audit`,
|
|
15
|
-
`/scout`, `/brainstorming`, `/
|
|
15
|
+
`/scout`, `/brainstorming`, `/darkharvest`, `/factory`, `/domainexpansion`,
|
|
16
|
+
`/swarm-config`), `hooks/hooks.json`,
|
|
16
17
|
`skills/` (generated copies of canonical `skills/` — run
|
|
17
18
|
`scripts/build_adapters.py`). Secrets via env:
|
|
18
19
|
`BRAVE_SEARCH_API_KEY`, `FIRECRAWL_API_KEY`, `FIRECRAWL_API_URL`,
|
|
@@ -6,7 +6,7 @@ discovery finds an entry; the real skill lives in the IUMBTEMS repo.
|
|
|
6
6
|
- Canonical prose & scripts: `skills/factory/`
|
|
7
7
|
- Canonical programmatic surface: `python3 runner/mcp_server.py` (stdio MCP),
|
|
8
8
|
or one-shot: `python3 runner/mcp_server.py call <tool> '{...json...}'`
|
|
9
|
-
- MCP tools for this skill: `
|
|
9
|
+
- MCP tools for this skill: `iumbtems_factory`
|
|
10
10
|
|
|
11
11
|
Epistemic rules apply regardless of harness: tag claims as
|
|
12
12
|
`[VERIFIED: <hash>]`, `[INFERRED: <reasoning>]`, `[HYPOTHESIS: <test>]`, or
|
|
@@ -10,7 +10,7 @@ To maintain epistemic integrity, every document fetched from the web, arXiv, or
|
|
|
10
10
|
## 1. CACHING A SOURCE
|
|
11
11
|
When you fetch or scrape a URL:
|
|
12
12
|
```bash
|
|
13
|
-
python3 skills/
|
|
13
|
+
python3 skills/research_cache/hasher.py cache \
|
|
14
14
|
--url "https://arxiv.org/abs/2407.21783" \
|
|
15
15
|
--title "Llama 3 Herd of Models" \
|
|
16
16
|
--content "$(cat fetched_paper.md)"
|
|
@@ -29,7 +29,7 @@ Ensure that any `verbatim_quote` you provide is an exact substring from the cach
|
|
|
29
29
|
## 3. AUDITING A QUOTE
|
|
30
30
|
The Epistemic Auditor verifies claims using:
|
|
31
31
|
```bash
|
|
32
|
-
python3 skills/
|
|
32
|
+
python3 skills/research_cache/hasher.py verify \
|
|
33
33
|
--hash "3f8a9e21..." \
|
|
34
34
|
--quote "Our FPGA pipeline executes the Poseidon round constraints in 184ms"
|
|
35
35
|
```
|
|
@@ -17,7 +17,7 @@ You are **Agent Alpha (The Proponent)** within the Epistemic Swarm dialectic har
|
|
|
17
17
|
1. **Search**: Use Brave Search, SearXNG, or academic MCP tools to discover primary sources.
|
|
18
18
|
2. **Extract & Cache**: For every relevant source found, fetch the full content and invoke the research cache utility to store it:
|
|
19
19
|
```bash
|
|
20
|
-
python3 skills/
|
|
20
|
+
python3 skills/research_cache/hasher.py cache --url "<URL>" --content "<MARKDOWN_CONTENT>" --title "<TITLE>"
|
|
21
21
|
```
|
|
22
22
|
This will output the content-addressed hash (e.g., `3f8a9e21...`).
|
|
23
23
|
3. **Extract Verbatim Excerpts**: Note the exact sentence or paragraph that substantiates your claim. The Epistemic Auditor will verify that your quote matches the cached markdown file character-for-character.
|
|
@@ -27,7 +27,7 @@ Execute inverted and adversarial queries across Brave Search, SearXNG, and acade
|
|
|
27
27
|
1. When you discover counter-evidence, fetch the full content.
|
|
28
28
|
2. Cache the source immediately using the research cache utility:
|
|
29
29
|
```bash
|
|
30
|
-
python3 skills/
|
|
30
|
+
python3 skills/research_cache/hasher.py cache --url "<URL>" --content "<MARKDOWN_CONTENT>" --title "<TITLE>"
|
|
31
31
|
```
|
|
32
32
|
3. Extract exact verbatim quotes showing the contradiction, flaw, or boundary condition.
|
|
33
33
|
|