killeros 1.2.0 → 1.4.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 CHANGED
@@ -1,12 +1,12 @@
1
1
  # KillerOS
2
2
 
3
- A production-hardened Pi extension that combines a custom TUI, reasoning controls, interactive questions, command aliases, and concise-response guidance.
3
+ A production-hardened Pi extension that combines a custom TUI, isolated subagents, repository initialization, long-running goals, reasoning controls, interactive questions, command aliases, and concise-response guidance.
4
4
 
5
5
  ## Requirements
6
6
 
7
7
  - Node.js `22.19.0` or later
8
8
  - Pi `0.82.1` or later
9
- - Interactive TUI mode for the custom header, editor, footer, and `question` tool
9
+ - Interactive TUI mode for the custom header, editor, footer, `question` tool, and `/init`
10
10
 
11
11
  The extension is strict TypeScript and uses only packages provided by Pi.
12
12
 
@@ -29,7 +29,7 @@ pi install git:github.com/KyrosHendrix/pi-KillerOS
29
29
  Pin an install to a release:
30
30
 
31
31
  ```bash
32
- pi install git:github.com/KyrosHendrix/pi-KillerOS@v1.2.0
32
+ pi install git:github.com/KyrosHendrix/pi-KillerOS@v1.4.0
33
33
  ```
34
34
 
35
35
  Add `-l` to either command for a project-only install. Restart Pi after installing.
@@ -40,9 +40,12 @@ Add `-l` to either command for a project-only install. Restart Pi after installi
40
40
  - Cohesive dark theme with coral accents and neutral tool-call containers across pending, success, and error states
41
41
  - Coral Spark activity indicator with Claude-adjacent verbs that advance between agent runs and a quiet hidden-thinking label
42
42
  - Framed multiline editor with Shift+Enter support
43
- - Responsive footer with polished model/provider identity and plain-language context remaining; reasoning, Git branch, elapsed time, cost, and path cut down by available width
43
+ - Responsive footer with polished model/provider identity, plain-language context, and active goal state remaining; reasoning, Git branch, elapsed time, cost, and path cut down by available width
44
44
  - `/variants` selector and direct reasoning-level arguments
45
- - `question` tool with filtering, keyboard selection, custom answers, history, cancellation, and resize-safe rendering
45
+ - Codex-style `/goal` for durable long-running objectives with pause, resume, edit, clear, automatic continuation, and explicit completion
46
+ - Pi-native `subagent` tool with isolated child processes, Markdown roles, explicit read/write boundaries, parallel readers, one serialized writer, bounded output, and cancellation propagation
47
+ - Claude Code-style `/init` that scans the repository and generates a concise root `AGENTS.md` without setup questions
48
+ - `question` tool with filtering, proposal previews, keyboard selection, custom answers, history, cancellation, and resize-safe rendering
46
49
  - Mid-prompt slash completion with current Pi `0.82.1` commands, extensions, prompts, and skills
47
50
  - `/clear` for a confirmed new session, plus `/exit` for graceful shutdown
48
51
  - Concise system-prompt guidance without modifying completed assistant messages
@@ -50,27 +53,54 @@ Add `-l` to either command for a project-only install. Restart Pi after installi
50
53
  ## Commands
51
54
 
52
55
  ```text
56
+ /init Generate root AGENTS.md from repository evidence
57
+ /goal View the current long-running goal
58
+ /goal <objective> Set an objective and start working
59
+ /goal edit Edit and reactivate the current goal
60
+ /goal pause Stop automatic continuation
61
+ /goal resume Resume automatic continuation
62
+ /goal clear Remove the current goal
53
63
  /variants Open the reasoning-level selector
54
64
  /variants high Set a reasoning level directly
55
65
  /clear Start a new session after confirmation
56
66
  /exit Quit Pi gracefully
57
67
  ```
58
68
 
69
+ `/goal` requires a saved session in TUI or RPC mode. Goal state is stored in versioned session entries on the active branch and restored after reload, resume, fork, or tree navigation. Active goals inject their unchanged objective every turn and continue one settled turn at a time. The model must use KillerOS’s private goal tool to mark verified completion or a blocker repeated across at least three goal turns; final prose alone does not end the loop. Aborted turns, provider failures, and continuation failures pause safely. Replacing unfinished work requires confirmation, and `/goal edit` requires TUI mode.
70
+
71
+ `/init` builds a bounded project map, reads high-value manifests, documentation, and CI configuration, and lets the active model inspect additional implementation files before generating root `AGENTS.md`. Existing `AGENTS.md` and `CLAUDE.md` content is intentionally excluded so stale guidance is not inherited. The command asks no setup questions, starts no second model process, writes only `AGENTS.md`, and reloads Pi resources when finished.
72
+
59
73
  Supported reasoning levels are `off`, `minimal`, `low`, `medium`, `high`, `xhigh`, and `max`. KillerOS limits choices to levels supported by the current model.
60
74
 
75
+ ## Subagents
76
+
77
+ KillerOS ships `scout`, `planner`, and `reviewer` as read-only roles and `worker` as the only write-capable default. Each invocation rediscovers Markdown roles with this precedence:
78
+
79
+ 1. Bundled: `<killeros>/agents/*.md`
80
+ 2. Personal: `~/.pi/agent/agents/*.md`
81
+ 3. Trusted project: `<repo>/.pi/agents/*.md`
82
+
83
+ The default `agentScope: "user"` uses bundled and personal roles. Use `"project"` or `"both"` to opt into trusted project roles; a selected project override requires interactive confirmation. Role frontmatter requires `name`, `description`, `access`, and an explicit `tools` list. Optional fields are `model`, `maxTurns`, and `timeoutMs`.
84
+
85
+ The tool supports a single `agent` + `task`, parallel `tasks`, or a sequential `chain` whose task text may include `{previous}`. Children run as ephemeral `pi --mode json -p --no-session` processes with extension, skill, and prompt-template discovery disabled. KillerOS allows at most eight tasks, four parallel readers, one serialized writer, 12 turns, ten minutes, 2 MiB retained trace, 64 KiB stderr, and 50 KiB returned output per task. Esc cancellation terminates active children and escalates after five seconds.
86
+
61
87
  ## Configuration
62
88
 
63
89
  KillerOS activates its packaged `killeros` theme when a TUI session starts. Tool-call backgrounds stay neutral across pending, successful, and failed states; restrained text and icons preserve status visibility.
64
90
 
65
- KillerOS displays session costs in USD. The footer uses Pi's human-readable model name when available, keeps the provider visually secondary, and renders context as `percent left (tokens)` without a progress bar.
91
+ KillerOS displays session costs in USD. The footer uses Pi's human-readable model name when available, keeps the provider visually secondary, and renders context as `percent left (tokens)` without a progress bar. When a goal exists, the footer adds its active time or terminal state; at narrow widths, context pressure and goal state take priority.
92
+
93
+ For trusted projects, KillerOS loads `AGENTS.local.md` after Pi's shared repository context. A one-line `@path` or `@~/path` file imports personal guidance from another location.
94
+
95
+ Lifecycle hooks are loaded from `.pi/killeros-hooks.json` at session start. Supported event keys are `tool_call`, `tool_result`, and `agent_settled`; matchers are JavaScript regular expressions over Pi tool names. Hook commands run from the repository root with `KILLEROS_EVENT`, `KILLEROS_TOOL`, and `KILLEROS_PAYLOAD` environment variables. Failed `tool_call` hooks block the tool, while later-event failures notify the user.
66
96
 
67
97
  ## Behavior by mode
68
98
 
69
99
  | Mode | Behavior |
70
100
  |---|---|
71
- | TUI | All features are available |
72
- | RPC | Commands and concise prompt guidance work; TUI components are disabled |
73
- | Print/JSON | Concise prompt guidance works; interactive questions fail explicitly |
101
+ | TUI | All features are available, including confirmation for trusted project subagents |
102
+ | RPC | Goal set/view/pause/resume/clear, subagents, and concise prompt guidance work; TUI components, `/goal edit`, and `/init` are disabled |
103
+ | Print/JSON | Concise prompt guidance works; interactive questions, `/goal`, `/init`, and project-role confirmation fail explicitly |
74
104
 
75
105
  ## Validation
76
106
 
@@ -101,7 +131,7 @@ git push origin main --follow-tags
101
131
 
102
132
  ## Security
103
133
 
104
- Pi extensions run with your user permissions. Review the source before installing it globally.
134
+ Pi extensions and write-capable subagents run with your user permissions. Review the source before installing it globally. KillerOS executes lifecycle hook commands and reads project agent roles only for projects Pi marks as trusted; review `.pi/killeros-hooks.json` and `.pi/agents/*.md` before enabling project trust.
105
135
 
106
136
  ## License
107
137
 
@@ -0,0 +1,10 @@
1
+ ---
2
+ name: planner
3
+ description: Produce a bounded implementation plan from verified repository evidence
4
+ access: read
5
+ tools: read, grep, find, ls
6
+ maxTurns: 8
7
+ timeoutMs: 300000
8
+ ---
9
+
10
+ Analyze the requested change and produce the smallest implementation plan that satisfies it. Verify relevant architecture, contracts, and tests in the repository. Name files and ordered validation steps. Surface unresolved decisions instead of silently assuming them. Do not modify files.
@@ -0,0 +1,10 @@
1
+ ---
2
+ name: reviewer
3
+ description: Review code for proven correctness, security, and regression risks without modifying files
4
+ access: read
5
+ tools: read, grep, find, ls
6
+ maxTurns: 8
7
+ timeoutMs: 300000
8
+ ---
9
+
10
+ Review the requested scope using repository evidence. Report only issues with a concrete trigger, resulting harm, and smallest safe correction. Check existing protections and tests before making a claim. Include exact paths and locations. Do not edit files and do not report stylistic preferences as defects.
@@ -0,0 +1,10 @@
1
+ ---
2
+ name: scout
3
+ description: Map a codebase, locate relevant files, and return evidence without modifying the checkout
4
+ access: read
5
+ tools: read, grep, find, ls
6
+ maxTurns: 8
7
+ timeoutMs: 300000
8
+ ---
9
+
10
+ Explore the requested area efficiently. Identify the smallest relevant set of files, trace important control and data flow, and return concise findings with exact paths and symbols. Do not edit files or propose speculative changes unsupported by repository evidence.
@@ -0,0 +1,10 @@
1
+ ---
2
+ name: worker
3
+ description: Implement one bounded repository change after requirements and evidence are clear
4
+ access: write
5
+ tools: read, grep, find, ls, edit, write, bash
6
+ maxTurns: 8
7
+ timeoutMs: 300000
8
+ ---
9
+
10
+ Implement only the requested bounded change. Re-check relevant files before editing, preserve unrelated work, and match existing conventions. Use the smallest safe edits and run focused verification required by the change. Report modified paths, checks, and any failures with their recovery action.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "killeros",
3
- "version": "1.2.0",
3
+ "version": "1.4.0",
4
4
  "description": "A production-hardened TUI and workflow extension for the Pi coding agent.",
5
5
  "type": "module",
6
6
  "keywords": [
@@ -21,6 +21,8 @@
21
21
  },
22
22
  "files": [
23
23
  "Killeros.ts",
24
+ "subagents.ts",
25
+ "agents/*.md",
24
26
  "themes/killeros.json",
25
27
  "README.md",
26
28
  "CHANGELOG.md"
@@ -41,6 +43,7 @@
41
43
  ]
42
44
  },
43
45
  "peerDependencies": {
46
+ "@earendil-works/pi-ai": "*",
44
47
  "@earendil-works/pi-coding-agent": "*",
45
48
  "@earendil-works/pi-tui": "*",
46
49
  "typebox": "*"