killeros 1.1.0 → 1.3.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/CHANGELOG.md +23 -6
- package/Killeros.ts +1544 -126
- package/README.md +25 -14
- package/package.json +1 -1
- package/themes/killeros.json +11 -11
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, 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,
|
|
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,20 +29,22 @@ 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.
|
|
32
|
+
pi install git:github.com/KyrosHendrix/pi-KillerOS@v1.3.0
|
|
33
33
|
```
|
|
34
34
|
|
|
35
35
|
Add `-l` to either command for a project-only install. Restart Pi after installing.
|
|
36
36
|
|
|
37
37
|
## Features
|
|
38
38
|
|
|
39
|
-
- Compact
|
|
39
|
+
- 52-column Compact startup card with inline version, polished model/provider identity, adjacent `/model`, directory, conditional Git branch, and a shuffled session-stable tip
|
|
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
|
-
-
|
|
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
|
-
- `
|
|
45
|
+
- Codex-style `/goal` for durable long-running objectives with pause, resume, edit, clear, automatic continuation, and explicit completion
|
|
46
|
+
- Claude Code-style `/init` that scans the repository and generates a concise root `AGENTS.md` without setup questions
|
|
47
|
+
- `question` tool with filtering, proposal previews, keyboard selection, custom answers, history, cancellation, and resize-safe rendering
|
|
46
48
|
- Mid-prompt slash completion with current Pi `0.82.1` commands, extensions, prompts, and skills
|
|
47
49
|
- `/clear` for a confirmed new session, plus `/exit` for graceful shutdown
|
|
48
50
|
- Concise system-prompt guidance without modifying completed assistant messages
|
|
@@ -50,33 +52,42 @@ Add `-l` to either command for a project-only install. Restart Pi after installi
|
|
|
50
52
|
## Commands
|
|
51
53
|
|
|
52
54
|
```text
|
|
55
|
+
/init Generate root AGENTS.md from repository evidence
|
|
56
|
+
/goal View the current long-running goal
|
|
57
|
+
/goal <objective> Set an objective and start working
|
|
58
|
+
/goal edit Edit and reactivate the current goal
|
|
59
|
+
/goal pause Stop automatic continuation
|
|
60
|
+
/goal resume Resume automatic continuation
|
|
61
|
+
/goal clear Remove the current goal
|
|
53
62
|
/variants Open the reasoning-level selector
|
|
54
63
|
/variants high Set a reasoning level directly
|
|
55
64
|
/clear Start a new session after confirmation
|
|
56
65
|
/exit Quit Pi gracefully
|
|
57
66
|
```
|
|
58
67
|
|
|
68
|
+
`/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.
|
|
69
|
+
|
|
70
|
+
`/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.
|
|
71
|
+
|
|
59
72
|
Supported reasoning levels are `off`, `minimal`, `low`, `medium`, `high`, `xhigh`, and `max`. KillerOS limits choices to levels supported by the current model.
|
|
60
73
|
|
|
61
74
|
## Configuration
|
|
62
75
|
|
|
63
76
|
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
77
|
|
|
65
|
-
KillerOS displays
|
|
78
|
+
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.
|
|
66
79
|
|
|
67
|
-
|
|
80
|
+
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.
|
|
68
81
|
|
|
69
|
-
|
|
70
|
-
PI_SHORTCUT_HINT=/variants
|
|
71
|
-
```
|
|
82
|
+
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.
|
|
72
83
|
|
|
73
84
|
## Behavior by mode
|
|
74
85
|
|
|
75
86
|
| Mode | Behavior |
|
|
76
87
|
|---|---|
|
|
77
88
|
| TUI | All features are available |
|
|
78
|
-
| RPC |
|
|
79
|
-
| Print/JSON | Concise prompt guidance works; interactive questions fail explicitly |
|
|
89
|
+
| RPC | Goal set/view/pause/resume/clear and concise prompt guidance work; TUI components, `/goal edit`, and `/init` are disabled |
|
|
90
|
+
| Print/JSON | Concise prompt guidance works; interactive questions, `/goal`, and `/init` fail explicitly |
|
|
80
91
|
|
|
81
92
|
## Validation
|
|
82
93
|
|
|
@@ -107,7 +118,7 @@ git push origin main --follow-tags
|
|
|
107
118
|
|
|
108
119
|
## Security
|
|
109
120
|
|
|
110
|
-
Pi extensions run with your user permissions. Review the source before installing it globally.
|
|
121
|
+
Pi extensions run with your user permissions. Review the source before installing it globally. KillerOS executes lifecycle hook commands only for projects Pi marks as trusted; review `.pi/killeros-hooks.json` before enabling project trust.
|
|
111
122
|
|
|
112
123
|
## License
|
|
113
124
|
|
package/package.json
CHANGED
package/themes/killeros.json
CHANGED
|
@@ -4,14 +4,14 @@
|
|
|
4
4
|
"vars": {
|
|
5
5
|
"coral": "#d77757",
|
|
6
6
|
"coralBright": "#e58b6d",
|
|
7
|
-
"canvas": "#
|
|
8
|
-
"surface": "#
|
|
9
|
-
"surfaceRaised": "#
|
|
10
|
-
"line": "#
|
|
11
|
-
"lineMuted": "#
|
|
12
|
-
"text": "#
|
|
13
|
-
"muted": "#
|
|
14
|
-
"dim": "#
|
|
7
|
+
"canvas": "#0a0a0a",
|
|
8
|
+
"surface": "#121212",
|
|
9
|
+
"surfaceRaised": "#1a1a1a",
|
|
10
|
+
"line": "#404040",
|
|
11
|
+
"lineMuted": "#2e2e2e",
|
|
12
|
+
"text": "#f2f2f2",
|
|
13
|
+
"muted": "#adadad",
|
|
14
|
+
"dim": "#808080",
|
|
15
15
|
"success": "#8fa88b",
|
|
16
16
|
"error": "#c8786c",
|
|
17
17
|
"warning": "#bda36c",
|
|
@@ -78,8 +78,8 @@
|
|
|
78
78
|
"bashMode": "warning"
|
|
79
79
|
},
|
|
80
80
|
"export": {
|
|
81
|
-
"pageBg": "#
|
|
82
|
-
"cardBg": "#
|
|
83
|
-
"infoBg": "#
|
|
81
|
+
"pageBg": "#0a0a0a",
|
|
82
|
+
"cardBg": "#121212",
|
|
83
|
+
"infoBg": "#1a1a1a"
|
|
84
84
|
}
|
|
85
85
|
}
|