@chllming/wave-orchestration 0.5.1

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 (68) hide show
  1. package/CHANGELOG.md +41 -0
  2. package/README.md +549 -0
  3. package/docs/agents/wave-deploy-verifier-role.md +34 -0
  4. package/docs/agents/wave-documentation-role.md +30 -0
  5. package/docs/agents/wave-evaluator-role.md +43 -0
  6. package/docs/agents/wave-infra-role.md +34 -0
  7. package/docs/agents/wave-integration-role.md +32 -0
  8. package/docs/agents/wave-launcher-role.md +37 -0
  9. package/docs/context7/bundles.json +91 -0
  10. package/docs/plans/component-cutover-matrix.json +112 -0
  11. package/docs/plans/component-cutover-matrix.md +49 -0
  12. package/docs/plans/context7-wave-orchestrator.md +130 -0
  13. package/docs/plans/current-state.md +44 -0
  14. package/docs/plans/master-plan.md +16 -0
  15. package/docs/plans/migration.md +23 -0
  16. package/docs/plans/wave-orchestrator.md +254 -0
  17. package/docs/plans/waves/wave-0.md +165 -0
  18. package/docs/reference/github-packages-setup.md +52 -0
  19. package/docs/reference/migration-0.2-to-0.5.md +622 -0
  20. package/docs/reference/npmjs-trusted-publishing.md +55 -0
  21. package/docs/reference/repository-guidance.md +18 -0
  22. package/docs/reference/runtime-config/README.md +85 -0
  23. package/docs/reference/runtime-config/claude.md +105 -0
  24. package/docs/reference/runtime-config/codex.md +81 -0
  25. package/docs/reference/runtime-config/opencode.md +93 -0
  26. package/docs/research/agent-context-sources.md +57 -0
  27. package/docs/roadmap.md +626 -0
  28. package/package.json +53 -0
  29. package/releases/manifest.json +101 -0
  30. package/scripts/context7-api-check.sh +21 -0
  31. package/scripts/context7-export-env.sh +52 -0
  32. package/scripts/research/agent-context-archive.mjs +472 -0
  33. package/scripts/research/generate-agent-context-indexes.mjs +85 -0
  34. package/scripts/research/import-agent-context-archive.mjs +793 -0
  35. package/scripts/research/manifests/harness-and-blackboard-2026-03-21.mjs +201 -0
  36. package/scripts/wave-autonomous.mjs +13 -0
  37. package/scripts/wave-cli-bootstrap.mjs +27 -0
  38. package/scripts/wave-dashboard.mjs +11 -0
  39. package/scripts/wave-human-feedback.mjs +11 -0
  40. package/scripts/wave-launcher.mjs +11 -0
  41. package/scripts/wave-local-executor.mjs +13 -0
  42. package/scripts/wave-orchestrator/agent-state.mjs +416 -0
  43. package/scripts/wave-orchestrator/autonomous.mjs +367 -0
  44. package/scripts/wave-orchestrator/clarification-triage.mjs +605 -0
  45. package/scripts/wave-orchestrator/config.mjs +848 -0
  46. package/scripts/wave-orchestrator/context7.mjs +464 -0
  47. package/scripts/wave-orchestrator/coord-cli.mjs +286 -0
  48. package/scripts/wave-orchestrator/coordination-store.mjs +987 -0
  49. package/scripts/wave-orchestrator/coordination.mjs +768 -0
  50. package/scripts/wave-orchestrator/dashboard-renderer.mjs +254 -0
  51. package/scripts/wave-orchestrator/dashboard-state.mjs +473 -0
  52. package/scripts/wave-orchestrator/dep-cli.mjs +219 -0
  53. package/scripts/wave-orchestrator/docs-queue.mjs +75 -0
  54. package/scripts/wave-orchestrator/executors.mjs +385 -0
  55. package/scripts/wave-orchestrator/feedback.mjs +372 -0
  56. package/scripts/wave-orchestrator/install.mjs +540 -0
  57. package/scripts/wave-orchestrator/launcher.mjs +3879 -0
  58. package/scripts/wave-orchestrator/ledger.mjs +332 -0
  59. package/scripts/wave-orchestrator/local-executor.mjs +263 -0
  60. package/scripts/wave-orchestrator/replay.mjs +246 -0
  61. package/scripts/wave-orchestrator/roots.mjs +10 -0
  62. package/scripts/wave-orchestrator/routing-state.mjs +542 -0
  63. package/scripts/wave-orchestrator/shared.mjs +405 -0
  64. package/scripts/wave-orchestrator/terminals.mjs +209 -0
  65. package/scripts/wave-orchestrator/traces.mjs +1094 -0
  66. package/scripts/wave-orchestrator/wave-files.mjs +1923 -0
  67. package/scripts/wave.mjs +103 -0
  68. package/wave.config.json +115 -0
@@ -0,0 +1,85 @@
1
+ # Runtime Configuration Reference
2
+
3
+ This directory is the canonical reference for executor configuration in Wave `0.5.x`.
4
+
5
+ Use it when you need the full supported surface for:
6
+
7
+ - `wave.config.json`
8
+ - `lanes.<lane>.executors`
9
+ - `executors.profiles.<profile>`
10
+ - per-agent `### Executor` blocks inside a wave file
11
+
12
+ ## Naming Conventions
13
+
14
+ - `wave.config.json` uses camelCase keys such as `profileName`, `addDirs`, `settingsJson`, and `allowedHttpHookUrls`.
15
+ - Wave markdown `### Executor` blocks use snake_case after the runtime prefix, such as `codex.profile_name`, `codex.add_dirs`, `claude.settings_json`, and `claude.allowed_http_hook_urls`.
16
+
17
+ ## Resolution Order
18
+
19
+ Executor id selection resolves in this order:
20
+
21
+ 1. agent `### Executor` `id`
22
+ 2. agent `### Executor` `profile` -> `executors.profiles.<profile>.id`
23
+ 3. `lanes.<lane>.runtimePolicy.defaultExecutorByRole`
24
+ 4. launcher `--executor`
25
+ 5. `executors.default`
26
+
27
+ Runtime settings resolve in layers:
28
+
29
+ 1. `executors.<runtime>` global defaults
30
+ 2. `lanes.<lane>.executors.<runtime>` lane overrides
31
+ 3. `executors.profiles.<profile>` or `lanes.<lane>.executors.profiles.<profile>`
32
+ 4. agent `### Executor`
33
+
34
+ Merge behavior:
35
+
36
+ - scalar values override from later layers
37
+ - list values merge for profile plus agent resolution on top of the lane base
38
+ - lane executor overrides replace the corresponding global runtime fields before profile and agent resolution
39
+ - a lane profile with the same name as a global profile replaces that profile definition for the lane
40
+
41
+ ## Common Fields
42
+
43
+ These fields are shared across runtimes:
44
+
45
+ | Surface | `wave.config.json` / profile key | Wave `### Executor` key | Notes |
46
+ | --- | --- | --- | --- |
47
+ | Executor id | `id` in profile only | `id` | Runtime id: `codex`, `claude`, `opencode`, `local` |
48
+ | Profile selection | n/a | `profile` | Selects `executors.profiles.<name>` |
49
+ | Model | `model` in profile, `executors.claude.model`, `executors.opencode.model` | `model` | Codex uses shared `model` from profile or agent only |
50
+ | Fallbacks | `fallbacks` in profile | `fallbacks` | Runtime ids used for retry-time reassignment |
51
+ | Tags | `tags` in profile | `tags` | Stored in resolved executor state for policy and traces |
52
+ | Budget turns | `budget.turns` in profile | `budget.turns` | Seeds Claude `maxTurns` and OpenCode `steps` when runtime-specific values are absent |
53
+ | Budget minutes | `budget.minutes` in profile | `budget.minutes` | Caps attempt timeout |
54
+
55
+ ## Runtime Pages
56
+
57
+ - [codex.md](./codex.md)
58
+ - [claude.md](./claude.md)
59
+ - [opencode.md](./opencode.md)
60
+
61
+ ## Generated Artifacts
62
+
63
+ Wave writes runtime artifacts here:
64
+
65
+ - live runs: `.tmp/<lane>-wave-launcher/executors/wave-<n>/<agent-slug>/`
66
+ - dry-run previews: `.tmp/<lane>-wave-launcher/dry-run/executors/wave-<n>/<agent-slug>/`
67
+
68
+ Common files:
69
+
70
+ - `launch-preview.json`: resolved invocation lines, env vars, and retry mode
71
+ - `claude-system-prompt.txt`: generated Claude harness prompt overlay
72
+ - `claude-settings.json`: generated Claude settings overlay when inline settings data is present
73
+ - `opencode-agent-prompt.txt`: generated OpenCode harness prompt overlay
74
+ - `opencode.json`: generated OpenCode runtime config overlay
75
+
76
+ ## Recommended Validation Path
77
+
78
+ Use dry-run before relying on a new runtime configuration:
79
+
80
+ ```bash
81
+ pnpm exec wave doctor
82
+ pnpm exec wave launch --lane main --dry-run --no-dashboard
83
+ ```
84
+
85
+ Then inspect the generated preview and overlay files under `.tmp/<lane>-wave-launcher/dry-run/executors/`.
@@ -0,0 +1,105 @@
1
+ # Claude Runtime Configuration
2
+
3
+ Wave launches Claude headlessly with `claude -p --no-session-persistence`.
4
+
5
+ ## Supported Configuration
6
+
7
+ | Behavior | `wave.config.json` / profile key | Wave `### Executor` key | Launch effect |
8
+ | --- | --- | --- | --- |
9
+ | Command | `executors.claude.command`, `executors.profiles.<name>.claude.command` | `claude.command` | Selects the executable |
10
+ | Default model | `executors.claude.model`, `executors.profiles.<name>.model` | `model` | Adds `--model <name>` |
11
+ | Agent | `executors.claude.agent`, `executors.profiles.<name>.claude.agent` | `claude.agent` | Adds `--agent <name>` |
12
+ | Prompt mode | `executors.claude.appendSystemPromptMode` | n/a | Uses `--append-system-prompt-file` or `--system-prompt-file` |
13
+ | Permission mode | `executors.claude.permissionMode`, `executors.profiles.<name>.claude.permissionMode` | `claude.permission_mode` | Adds `--permission-mode <mode>` |
14
+ | Permission prompt tool | `executors.claude.permissionPromptTool`, `executors.profiles.<name>.claude.permissionPromptTool` | `claude.permission_prompt_tool` | Adds `--permission-prompt-tool <tool>` |
15
+ | Max turns | `executors.claude.maxTurns`, `executors.profiles.<name>.claude.maxTurns` | `claude.max_turns` | Adds `--max-turns <n>` |
16
+ | MCP config | `executors.claude.mcpConfig`, `executors.profiles.<name>.claude.mcpConfig` | `claude.mcp_config` | Adds repeated `--mcp-config <path>` |
17
+ | Strict MCP mode | `executors.claude.strictMcpConfig`, `executors.profiles.<name>.claude.strictMcpConfig` | n/a | Adds `--strict-mcp-config` |
18
+ | Base settings file | `executors.claude.settings`, `executors.profiles.<name>.claude.settings` | `claude.settings` | Passed through `--settings` when no inline overlay is generated, or used as the base for the generated overlay |
19
+ | Inline settings JSON | `executors.claude.settingsJson`, `executors.profiles.<name>.claude.settingsJson` | `claude.settings_json` | Merged into generated settings overlay |
20
+ | Inline hooks JSON | `executors.claude.hooksJson`, `executors.profiles.<name>.claude.hooksJson` | `claude.hooks_json` | Written under top-level `hooks` in the generated settings overlay |
21
+ | Allowed HTTP hook URLs | `executors.claude.allowedHttpHookUrls`, `executors.profiles.<name>.claude.allowedHttpHookUrls` | `claude.allowed_http_hook_urls` | Written under top-level `allowedHttpHookUrls` in the generated settings overlay |
22
+ | Output format | `executors.claude.outputFormat`, `executors.profiles.<name>.claude.outputFormat` | `claude.output_format` | Adds `--output-format text|json|stream-json` |
23
+ | Allowed tools | `executors.claude.allowedTools`, `executors.profiles.<name>.claude.allowedTools` | `claude.allowed_tools` | Adds repeated `--allowedTools <tool>` |
24
+ | Disallowed tools | `executors.claude.disallowedTools`, `executors.profiles.<name>.claude.disallowedTools` | `claude.disallowed_tools` | Adds repeated `--disallowedTools <tool>` |
25
+
26
+ ## Overlay Behavior
27
+
28
+ Wave always writes `claude-system-prompt.txt` for the harness runtime instructions.
29
+
30
+ Wave writes `claude-settings.json` only when at least one inline overlay input is present:
31
+
32
+ - `settingsJson`
33
+ - `hooksJson`
34
+ - `allowedHttpHookUrls`
35
+
36
+ Merge order:
37
+
38
+ 1. base `claude.settings` JSON file, if provided
39
+ 2. inline `settingsJson`
40
+ 3. inline `hooksJson` under top-level `hooks`
41
+ 4. inline `allowedHttpHookUrls` under top-level `allowedHttpHookUrls`
42
+
43
+ If no inline overlay data is present, Wave passes the base `claude.settings` file directly through `--settings` without generating `claude-settings.json`.
44
+
45
+ ## Example: `wave.config.json`
46
+
47
+ ```json
48
+ {
49
+ "executors": {
50
+ "profiles": {
51
+ "deep-review": {
52
+ "id": "claude",
53
+ "model": "claude-sonnet-4-6",
54
+ "budget": {
55
+ "turns": 10,
56
+ "minutes": 30
57
+ },
58
+ "claude": {
59
+ "agent": "reviewer",
60
+ "permissionMode": "plan",
61
+ "allowedTools": ["Read"],
62
+ "disallowedTools": ["Edit"]
63
+ }
64
+ }
65
+ },
66
+ "claude": {
67
+ "command": "claude",
68
+ "appendSystemPromptMode": "append",
69
+ "outputFormat": "text",
70
+ "settingsJson": {
71
+ "permissions": {
72
+ "allow": ["Read"]
73
+ }
74
+ }
75
+ }
76
+ }
77
+ }
78
+ ```
79
+
80
+ ## Example: Wave `### Executor`
81
+
82
+ ````md
83
+ ### Executor
84
+
85
+ - id: claude
86
+ - model: claude-sonnet-4-6
87
+ - claude.permission_mode: plan
88
+ - claude.max_turns: 4
89
+ - claude.settings_json: {"permissions":{"allow":["Read"]}}
90
+ - claude.hooks_json: {"Stop":[{"command":"echo stop"}]}
91
+ - claude.allowed_http_hook_urls: https://example.com/hooks
92
+ - claude.output_format: json
93
+ - claude.allowed_tools: Read
94
+ - claude.disallowed_tools: Edit
95
+ ````
96
+
97
+ ## Dry-Run Output
98
+
99
+ For a dry run, inspect:
100
+
101
+ - `claude-system-prompt.txt`
102
+ - `claude-settings.json`, when generated
103
+ - `launch-preview.json`
104
+
105
+ `launch-preview.json` shows the final `claude -p` invocation and whether `--settings`, `--allowedTools`, `--disallowedTools`, `--mcp-config`, or `--system-prompt-file` were included.
@@ -0,0 +1,81 @@
1
+ # Codex Runtime Configuration
2
+
3
+ Wave launches Codex with `codex exec` and pipes the generated task prompt through stdin.
4
+
5
+ ## Supported Configuration
6
+
7
+ | Behavior | `wave.config.json` / profile key | Wave `### Executor` key | Launch effect |
8
+ | --- | --- | --- | --- |
9
+ | Command | `executors.codex.command`, `executors.profiles.<name>.codex.command` | `codex.command` | Selects the executable |
10
+ | Sandbox | `executors.codex.sandbox`, `executors.profiles.<name>.codex.sandbox` | `codex.sandbox` | Sets `--sandbox`; if absent on a selected Codex agent, launcher `--codex-sandbox` can supply the runtime default |
11
+ | CLI profile | `executors.codex.profileName`, `executors.profiles.<name>.codex.profileName` | `codex.profile_name` | Adds `--profile <name>` |
12
+ | Inline config overrides | `executors.codex.config`, `executors.profiles.<name>.codex.config` | `codex.config` | Adds repeated `-c key=value` |
13
+ | Search | `executors.codex.search`, `executors.profiles.<name>.codex.search` | `codex.search` | Adds `--search` |
14
+ | Images | `executors.codex.images`, `executors.profiles.<name>.codex.images` | `codex.images` | Adds repeated `--image <path>` |
15
+ | Extra directories | `executors.codex.addDirs`, `executors.profiles.<name>.codex.addDirs` | `codex.add_dirs` | Adds repeated `--add-dir <path>` |
16
+ | JSON mode | `executors.codex.json`, `executors.profiles.<name>.codex.json` | `codex.json` | Adds `--json` |
17
+ | Ephemeral session | `executors.codex.ephemeral`, `executors.profiles.<name>.codex.ephemeral` | `codex.ephemeral` | Adds `--ephemeral` |
18
+ | Model | `executors.profiles.<name>.model` | `model` | Adds `--model <name>` |
19
+
20
+ ## Notes
21
+
22
+ - There is no `executors.codex.model` key today. Use profile `model` or per-agent `model`.
23
+ - `codex.images`, `codex.add_dirs`, and `codex.config` accept either a string array in `wave.config.json` or a comma-separated list in a wave file.
24
+ - Relative paths are passed to Codex relative to the repository root because Wave launches the executor from the repo workspace.
25
+
26
+ ## Example: `wave.config.json`
27
+
28
+ ```json
29
+ {
30
+ "executors": {
31
+ "default": "codex",
32
+ "profiles": {
33
+ "implement-fast": {
34
+ "id": "codex",
35
+ "model": "gpt-5-codex",
36
+ "fallbacks": ["claude", "opencode"],
37
+ "budget": {
38
+ "turns": 12,
39
+ "minutes": 45
40
+ },
41
+ "codex": {
42
+ "profileName": "review",
43
+ "config": ["model_reasoning_effort=medium"],
44
+ "search": true
45
+ }
46
+ }
47
+ },
48
+ "codex": {
49
+ "command": "codex",
50
+ "sandbox": "danger-full-access",
51
+ "json": false,
52
+ "ephemeral": false
53
+ }
54
+ }
55
+ }
56
+ ```
57
+
58
+ ## Example: Wave `### Executor`
59
+
60
+ ````md
61
+ ### Executor
62
+
63
+ - id: codex
64
+ - model: gpt-5-codex
65
+ - codex.profile_name: review
66
+ - codex.config: model_reasoning_effort=high,model_verbosity=low
67
+ - codex.search: true
68
+ - codex.images: docs/mock-ui.png
69
+ - codex.add_dirs: ../shared,../infra
70
+ - codex.json: true
71
+ - codex.ephemeral: true
72
+ ````
73
+
74
+ ## Dry-Run Output
75
+
76
+ For a dry run, inspect:
77
+
78
+ - `launch-preview.json` for the final `codex exec` command
79
+ - any referenced prompt file under `.tmp/<lane>-wave-launcher/dry-run/prompts/`
80
+
81
+ The preview records the exact `--profile`, repeated `-c`, `--image`, and `--add-dir` flags that Wave would use in a live launch.
@@ -0,0 +1,93 @@
1
+ # OpenCode Runtime Configuration
2
+
3
+ Wave launches OpenCode with `opencode run` and points `OPENCODE_CONFIG` at a generated overlay.
4
+
5
+ ## Supported Configuration
6
+
7
+ | Behavior | `wave.config.json` / profile key | Wave `### Executor` key | Launch effect |
8
+ | --- | --- | --- | --- |
9
+ | Command | `executors.opencode.command`, `executors.profiles.<name>.opencode.command` | `opencode.command` | Selects the executable |
10
+ | Default model | `executors.opencode.model`, `executors.profiles.<name>.model` | `model` | Adds `--model <name>` |
11
+ | Agent name | `executors.opencode.agent`, `executors.profiles.<name>.opencode.agent` | `opencode.agent` | Selects the injected agent name used with `--agent <name>` |
12
+ | Single attachment | `executors.opencode.attach`, `executors.profiles.<name>.opencode.attach` | `opencode.attach` | Adds `--attach <path>` |
13
+ | Multiple files | `executors.opencode.files`, `executors.profiles.<name>.opencode.files` | `opencode.files` | Adds repeated `--file <path>` |
14
+ | Output format | `executors.opencode.format`, `executors.profiles.<name>.opencode.format` | `opencode.format` | Adds `--format default|json` |
15
+ | Step limit | `executors.opencode.steps`, `executors.profiles.<name>.opencode.steps` | `opencode.steps` | Stored in the generated agent config |
16
+ | Instructions | `executors.opencode.instructions`, `executors.profiles.<name>.opencode.instructions` | `opencode.instructions` | Merged into top-level `instructions` in the generated overlay |
17
+ | Permission JSON | `executors.opencode.permission`, `executors.profiles.<name>.opencode.permission` | `opencode.permission` | Stored in the generated agent config |
18
+ | Config overlay JSON | `executors.opencode.configJson`, `executors.profiles.<name>.opencode.configJson` | `opencode.config_json` | Deep-merged into the generated `opencode.json` |
19
+
20
+ ## Overlay Behavior
21
+
22
+ Wave always writes:
23
+
24
+ - `opencode-agent-prompt.txt`
25
+ - `opencode.json`
26
+
27
+ Merge order for `opencode.json`:
28
+
29
+ 1. inline `configJson` from config, profile, and agent resolution
30
+ 2. generated `$schema` if the merged config does not already define one
31
+ 3. merged top-level `instructions`
32
+ 4. generated or merged `agent.<resolved-name>` entry that points to `opencode-agent-prompt.txt`
33
+
34
+ Wave then exports `OPENCODE_CONFIG=<generated-path>` for the run.
35
+
36
+ ## Example: `wave.config.json`
37
+
38
+ ```json
39
+ {
40
+ "executors": {
41
+ "profiles": {
42
+ "ops-triage": {
43
+ "id": "opencode",
44
+ "model": "anthropic/claude-sonnet-4-20250514",
45
+ "budget": {
46
+ "turns": 8,
47
+ "minutes": 20
48
+ },
49
+ "opencode": {
50
+ "instructions": ["Keep findings concise."],
51
+ "permission": {
52
+ "task": "ask"
53
+ },
54
+ "configJson": {
55
+ "plugins": ["./plugins/runtime.mjs"]
56
+ }
57
+ }
58
+ }
59
+ },
60
+ "opencode": {
61
+ "command": "opencode",
62
+ "format": "default"
63
+ }
64
+ }
65
+ }
66
+ ```
67
+
68
+ ## Example: Wave `### Executor`
69
+
70
+ ````md
71
+ ### Executor
72
+
73
+ - id: opencode
74
+ - model: anthropic/claude-sonnet-4-20250514
75
+ - opencode.agent: docs-runner
76
+ - opencode.attach: docs/plans/current-state.md
77
+ - opencode.files: README.md,docs/plans/current-state.md
78
+ - opencode.format: json
79
+ - opencode.steps: 6
80
+ - opencode.instructions: Keep shared-plan edits concise.
81
+ - opencode.permission: {"task":"ask"}
82
+ - opencode.config_json: {"plugins":["./plugins/runtime.mjs"]}
83
+ ````
84
+
85
+ ## Dry-Run Output
86
+
87
+ For a dry run, inspect:
88
+
89
+ - `opencode-agent-prompt.txt`
90
+ - `opencode.json`
91
+ - `launch-preview.json`
92
+
93
+ `launch-preview.json` shows the final `opencode run` command and the exported `OPENCODE_CONFIG` path.
@@ -0,0 +1,57 @@
1
+ ---
2
+ title: "Agent Context Sources"
3
+ summary: "Primary external sources used as inspiration for harness design, long-running agents, blackboard coordination, and repository-context evaluation."
4
+ ---
5
+
6
+ # Agent Context Sources
7
+
8
+ This repository does not commit converted paper/article caches. Keep any hydrated local copies under `docs/research/agent-context-cache/` or another ignored cache directory.
9
+
10
+ ## Harnesses and Long-Running Agents
11
+
12
+ - [Harness engineering: leveraging Codex in an agent-first world](https://openai.com/index/harness-engineering/)
13
+ - [Unlocking the Codex harness: how we built the App Server](https://openai.com/index/unlocking-the-codex-harness/)
14
+ - [Effective harnesses for long-running agents](https://www.anthropic.com/engineering/effective-harnesses-for-long-running-agents)
15
+ - [Building Effective AI Coding Agents for the Terminal: Scaffolding, Harness, Context Engineering, and Lessons Learned](https://arxiv.org/abs/2603.05344)
16
+ - [VeRO: An Evaluation Harness for Agents to Optimize Agents](https://arxiv.org/abs/2602.22480)
17
+ - [EvoClaw: Evaluating AI Agents on Continuous Software Evolution](https://arxiv.org/abs/2603.13428)
18
+
19
+ ## Blackboard and Shared Workspaces
20
+
21
+ - [LLM-Based Multi-Agent Blackboard System for Information Discovery in Data Science](https://arxiv.org/abs/2510.01285)
22
+ - [Exploring Advanced LLM Multi-Agent Systems Based on Blackboard Architecture](https://arxiv.org/abs/2507.01701)
23
+ - [DOVA: Deliberation-First Multi-Agent Orchestration for Autonomous Research Automation](https://arxiv.org/abs/2603.13327)
24
+ - [SYMPHONY: Synergistic Multi-agent Planning with Heterogeneous Language Model Assembly](https://arxiv.org/abs/2601.22623)
25
+ - [Silo-Bench: A Scalable Environment for Evaluating Distributed Coordination in Multi-Agent LLM Systems](https://arxiv.org/abs/2603.01045)
26
+ - [An Open Agent Architecture](https://cdn.aaai.org/Symposia/Spring/1994/SS-94-03/SS94-03-001.pdf)
27
+
28
+ ## Repo Context and Evaluation
29
+
30
+ - [Evaluating AGENTS.md: Are Repository-Level Context Files Helpful for Coding Agents?](https://arxiv.org/html/2602.11988v1)
31
+ - [VeRO: An Evaluation Harness for Agents to Optimize Agents](https://arxiv.org/abs/2602.22480)
32
+ - [EvoClaw: Evaluating AI Agents on Continuous Software Evolution](https://arxiv.org/abs/2603.13428)
33
+ - [Silo-Bench: A Scalable Environment for Evaluating Distributed Coordination in Multi-Agent LLM Systems](https://arxiv.org/abs/2603.01045)
34
+
35
+ ## Adjacent Context and Memory
36
+
37
+ - [Memory for Autonomous LLM Agents: Mechanisms, Evaluation, and Emerging Frontiers](https://arxiv.org/abs/2603.07670)
38
+ - [Effective context engineering for AI agents](https://www.anthropic.com/engineering/effective-context-engineering-for-ai-agents)
39
+ - [Run long horizon tasks with Codex](https://developers.openai.com/blog/run-long-horizon-tasks-with-codex/)
40
+ - [Prompt guidance for GPT-5](https://developers.openai.com/api/docs/guides/prompt-guidance/)
41
+ - [Codex Prompting Guide](https://developers.openai.com/cookbook/examples/gpt-5/codex_prompting_guide/)
42
+ - [Writing effective tools for agents](https://www.anthropic.com/engineering/writing-tools-for-agents)
43
+ - [Building effective agents](https://www.anthropic.com/engineering/building-effective-agents)
44
+ - [Context Engineering for AI Agents in Open-Source Software](https://arxiv.org/abs/2510.21413)
45
+ - [ReAct: Synergizing Reasoning and Acting in Language Models](https://arxiv.org/abs/2210.03629)
46
+ - [Toolformer: Language Models Can Teach Themselves to Use Tools](https://arxiv.org/abs/2302.04761)
47
+ - [Plan-and-Solve Prompting](https://arxiv.org/abs/2305.04091)
48
+ - [Augmenting Language Models with Long-Term Memory](https://arxiv.org/abs/2306.07174)
49
+ - [MemGPT: Towards LLMs as Operating Systems](https://arxiv.org/abs/2310.08560)
50
+ - [Lost in the Middle: How Language Models Use Long Contexts](https://direct.mit.edu/tacl/article/doi/10.1162/tacl_a_00638/119630/Lost-in-the-Middle-How-Language-Models-Use-Long)
51
+ - [ReSum: Unlocking Long-Horizon Search Intelligence via Context Summarization](https://arxiv.org/abs/2509.13313)
52
+
53
+ ## Notes
54
+
55
+ - Use these sources as inspiration and comparison points, not as canonical repo policy.
56
+ - Context7 bundles should be narrow and task-scoped.
57
+ - Cached local exports belong in ignored paths only.