2e20d87151
- Removed per-task skill pinning feature; subagents now inherit session skill set instead of per-task selection. - Removed `preloadedSkills` option from `CreateAgentSessionOptions` interface and related system prompt plumbing. - Removed `skills` field from Task schema; task execution now passes available session skills directly to subagents. - Simplified task execution pipeline by removing skill resolution logic and preloaded skills handling from system prompt templates.
5.6 KiB
5.6 KiB
Launches subagents to parallelize workflows.
{{#if asyncEnabled}}
- Use
read jobs://to inspect state;read jobs://<job_id>for detail. - Use the
awaittool to wait until completion. You MUST NOT pollread jobs://in a loop. {{/if}}
Subagents lack your conversation history. Every decision, file content, and user requirement they need MUST be explicit in context or assignment.
| Sequential first | Then | Reason |
|---|---|---|
| Types/interfaces | Consumers | Need contract |
| API exports | Callers | Need signatures |
| Core module | Dependents | Import dependency |
| Schema/migration | App logic | Schema dependency |
| Safe to parallelize: independent modules, isolated file-scoped refactors, tests for existing code. | ||
Change
- Rename
parseConfig→loadConfig(declaration + any JSDoc referencing it) - If
src/config/index.tsre-exportsparseConfig, update that re-export too
Edge Cases
- If the function is overloaded, rename all overload signatures
- Internal helpers named
_parseConfigValueor similar: leave untouched — different symbols - Do not add a backwards-compat alias
Acceptance
src/config/parser.tsexportsloadConfig;parseConfigno longer appears as a top-level export in that file Update import and call sites in consuming modules
Target
- Files:
src/cli/init.ts,src/server/bootstrap.ts,src/worker/index.ts - Non-goals: do not touch
src/config/parser.tsorsrc/config/index.ts— handled by sibling task
Change
- In each file: replace
import { parseConfig }→import { loadConfig }from its config path - Replace every call site
parseConfig(→loadConfig(
Edge Cases
- If a file spreads the import (
import * as cfg from "…") and callscfg.parseConfig(…), update the property access too - String literals containing "parseConfig" (log messages, comments) are documentation — leave them
- If any file re-exports
parseConfigto an external package boundary, keep the old name viaexport { loadConfig as parseConfig }and add a// TODO: remove after next majorcomment
Acceptance
- No bare reference to
parseConfig(as identifier, not string) remains in the three target files
{{#list agents join="\n"}}
Agent: {{name}}
Tools: {{default (join tools ", ") "All"}} {{description}} {{/list}}