@evoclock/pi-agentic-driver 0.9.3 → 0.10.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/PROVENANCE.md CHANGED
@@ -72,3 +72,12 @@ This repository is the public package source for `@evoclock/pi-agentic-driver`.
72
72
  change it, the switch is not persisted, and each microVM run still requires
73
73
  native confirmation. Headless sessions fail closed. The existing trusted
74
74
  facts, fixed argv, receipt validation, and cleanup checks remain unchanged.
75
+ - The unified tasks skill (session task tools + owner-initiated TaskPromote)
76
+ reimplements the documented behavior of @ladbabynpm/picc-tasks v0.2.0 (MIT,
77
+ Copyright (c) 2026 Ladbaby) as prior art: the same tool names, the same
78
+ storage model (session JSONL snapshot entries plus a disk mirror at
79
+ ~/.pi/tasks/{taskListId}/tasks.json), and the same result text. No code is
80
+ copied; this is a clean AGPL-3.0-only reimplementation to the same behavior
81
+ spec, so no MIT license text is vendored. picc-tasks is an independent
82
+ project by its author, used as reference; it is not affiliated with, nor
83
+ does it endorse, pi-agentic-driver.
package/README.md CHANGED
@@ -43,6 +43,7 @@ proofs for agentic workflows.
43
43
  | Tool | What it does | Status |
44
44
  |------|--------------|--------|
45
45
  | `code_phage` | Reviews a plan against a stated goal before code is written and advises your agent. | shipped |
46
+ | `tasks` | Keeps a session plan close to the work, then lets the owner make selected items durable in `TASKS.md`. | shipped |
46
47
  | `agentic_herdr_communication` | Exchanges marked reports with worker agents; never grants authority. | shipped |
47
48
  | `agentic_herdr_spawn_worker` | Starts one Pi worker in a pane or tab, with native confirmation. | shipped |
48
49
  | `agentic_aidr` | A remedy for AI;DR. Reviews writing for clarity, simplicity, brevity, and humanity. | shipped |
@@ -95,14 +96,43 @@ only, not a runtime dependency).
95
96
 
96
97
  </details>
97
98
 
99
+ <details>
100
+ <summary><strong>tasks, from session plan to durable work</strong> <em>(shipped)</em></summary>
101
+
102
+ Plans stay close to the work. They do not become board work by accident. The tasks skill gives Pi a familiar session list. It adds an owner-approved way to keep selected tasks in the durable `TASKS.md` board.
103
+
104
+ - **Keep the working list simple.** Use `TaskCreate`, `TaskGet`, `TaskList`, and `TaskUpdate` as usual; the above-editor widget and footer pill stay live as tasks change.
105
+ - **Keep the Claude-like view.** `/tasks` provides descriptions, active forms, and internal-task markers without mutating the plan.
106
+ - **Make durable work deliberate.** `TaskPromote` never runs automatically. It previews the exact cards and destination before the owner confirms.
107
+ - **Keep authority clear.** The trusted board writer creates and updates `TASKS.md`. The skill does not bypass it.
108
+ - **Make migration gentle.** Existing task files remain readable. Moving to the driver-owned skill does not strand current plans.
109
+
110
+ The result is a clean handoff from a session plan to durable work. Selected tasks can survive the session, appear on the shared board, and become available for controlled dispatch when ready.
98
111
 
99
- - **prompted planning lifecycle.** Natural-language goals become complete
100
- semantic proposals with parent and scope choices at native boundaries. No
101
- retry loops, no model-supplied identifiers.
102
- - **native assignment selection.** Planned assignments are chosen through a
103
- native UI over derived candidates, never by model-supplied targets.
104
- - **inventory refresh.** Git-aware codebase inventory regeneration with
105
- verification receipts, so prior-art matching stays honest.
112
+ </details>
113
+
114
+ **Available now:**
115
+
116
+ - **task-ledger integration.** Agents can read and act within board card
117
+ states while the trusted writer retains authority over admission,
118
+ completion, reconciliation, and migration. The Tasks skill also bridges
119
+ session planning to the durable `TASKS.md` board.
120
+ - **role and phase routing.** The router separates planning, implementation,
121
+ review, and escalation phases. It reports endpoint warm state when
122
+ configured. Warm-session preference remains future work; route affinity
123
+ never overrides authority.
124
+
125
+ **Planned in this theme:**
126
+
127
+ - **prompted planning lifecycle.** Turn natural-language goals into complete
128
+ proposals with parent and scope choices at native boundaries. No retry
129
+ loops or model-supplied identifiers.
130
+ - **native assignment selection.** Choose planned assignments through a
131
+ native UI over derived candidates, never through model-supplied targets.
132
+ - **inventory refresh.** Regenerate the Git-aware codebase inventory with
133
+ verification receipts so prior-art matching stays honest.
134
+ - **project status and state review.** Add read-only views of workspace Git
135
+ state, formal records, and task-state health.
106
136
 
107
137
  <details>
108
138
  <summary><strong>router, capacity/policy routing with a binding dispatch gate</strong> <em>(released, 0.9.2)</em></summary>
@@ -180,6 +210,57 @@ is for. The dispatch gate reads them when judging whether a task fits.
180
210
 
181
211
  </details>
182
212
 
213
+ <details>
214
+ <summary><strong>Janus, local Jev evaluation service</strong> <em>(shipped)</em></summary>
215
+
216
+ Janus is the local evaluation service bundled in this repository under
217
+ `janus/`. It is the only component allowed to talk to the TypeSafe Jev
218
+ model. It wraps the official TypeSafe SDK. It exposes one evaluation endpoint
219
+ and health probes on loopback. The router's semantic ranking and binding
220
+ dispatch gate call it. Nothing else in the harness talks to Jev directly.
221
+
222
+ **Guarantees:**
223
+
224
+ - **Loopback only.** Janus binds `127.0.0.1:8787` and nothing else. There is
225
+ deliberately no bind-address option: it is a local tool.
226
+ - **Key stays in the macOS Keychain.** Janus reads the TypeSafe API key at
227
+ runtime with a guarded `security` lookup. It never passes the key to
228
+ subprocesses. It never writes the key to logs or transcripts.
229
+ - **Redaction before every external call.** A secrets/PII pass runs over the
230
+ state before anything leaves the machine. No disable knob exists.
231
+ - **Single-flight.** Janus coalesces identical requests. It caps distinct
232
+ in-flight evaluations. It rejects overflow with `busy` instead of queuing
233
+ silently.
234
+ - **Controlled requests.** Janus enforces a 30k-token request budget. It
235
+ rejects oversized requests instead of truncating them.
236
+
237
+ **Running it:**
238
+
239
+ ```sh
240
+ cd janus
241
+ ```
242
+
243
+ ```sh
244
+ npm install
245
+ ```
246
+
247
+ ```sh
248
+ npx tsx janus/server.ts
249
+ ```
250
+
251
+ For a persistent setup, use the launchd template at
252
+ `janus/user.janus.plist`. Provision the TypeSafe Direct key once in the
253
+ Keychain. The command is in `janus/README.md`.
254
+
255
+ **When Janus is down:** semantic ranking falls back to preference order. The
256
+ binding dispatch gate blocks dispatch and fails closed. Janus never becomes a
257
+ silent dependency: its absence is loud.
258
+
259
+ See `janus/README.md` for the full endpoint contract, the error taxonomy, and
260
+ configuration.
261
+
262
+ </details>
263
+
183
264
  ## Multi-agent communication
184
265
 
185
266
  *Extensions for controlled coordination between agents.*
@@ -582,20 +663,21 @@ silently allowed.
582
663
 
583
664
  *Extensions that keep routine Git low-friction and consequential Git guarded.*
584
665
 
585
- **In development:**
666
+ **Planned:**
586
667
 
587
- - **git workflow safeguards.** Design only; the package contains no Git
588
- extension yet. The planned capability covers exact-file staging, native
589
- confirmation, post-confirmation drift checks, and protected-operation
590
- boundaries.
591
- - **assignment-aware Git journeys.** Merge and protected-push flows bound to
592
- a verified assignment, so consequential Git operations carry their own
593
- recorded provenance.
668
+ - **git workflow safeguards.** Not packaged yet. The planned capability covers
669
+ exact-file staging, native confirmation, post-confirmation drift checks,
670
+ and protected-operation boundaries.
671
+ - **assignment-aware Git journeys.** Planned merge and protected-push flows
672
+ bound to a verified assignment, so consequential Git operations carry their
673
+ own recorded provenance.
594
674
 
595
675
  ## Package integrity
596
676
 
597
677
  *Extensions that keep the installed set honest and the record controlled.*
598
678
 
679
+ **Planned:**
680
+
599
681
  - **security and integrity scanning.** Static scanning of MCP configs, agent
600
682
  skills, and extension packages for hardcoded secrets, prompt and shell
601
683
  injection, data-exfiltration endpoints, untrusted integrations, PII
@@ -653,10 +735,10 @@ extensions you want with the object form in your Pi settings:
653
735
  }
654
736
  ```
655
737
 
656
- The package includes the `herdr-communication.ts`, `herdr-lifecycle.ts`, and
657
- `herdr-dispatch.ts` extensions. It also includes `linux-microvm.ts`. Use `pi config` to enable or
658
- disable individual resources from an installed package. You are not required
659
- to use every extension.
738
+ The package includes the Herdr communication, lifecycle, and dispatch
739
+ extensions, the board and Tasks extensions, and `linux-microvm.ts`. Use
740
+ `pi config` to enable or disable individual resources from an installed
741
+ package. You are not required to use every extension.
660
742
 
661
743
  ## License
662
744