@hilbras/omninode 0.3.0 → 0.5.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
@@ -18,7 +18,7 @@ existing intelligence; it does not try to become another model.
18
18
 
19
19
  ## Status
20
20
 
21
- **v0.3.0 — Phase 2: OmniHilbras Integration** (see [docs/DEVELOPMENT_PLAN.md](docs/DEVELOPMENT_PLAN.md)
21
+ **v0.5.0 — Phase 4: Roles & Tasks** (see [docs/DEVELOPMENT_PLAN.md](docs/DEVELOPMENT_PLAN.md)
22
22
  for the full plan and roadmap).
23
23
 
24
24
  What exists today:
@@ -35,6 +35,24 @@ What exists today:
35
35
  - Provider factory mapping config to adapters; `omnihilbras` gets a
36
36
  dedicated adapter implementing the plan's connect flow —
37
37
  Connect → Authenticate → Fetch Models → Validate Models → Register
38
+ - **Agent system** (`src/agents/`):
39
+ - Process adapter: spawns CLI agents as child processes with lifecycle
40
+ management — environment, working directory, exit codes, stderr logs,
41
+ per-task timeouts (SIGTERM → SIGKILL) and cancellation
42
+ - Three input modes: `stdin` (composed task text on stdin), `arg` (prompt as
43
+ last argument) and `protocol` (the §21 JSON-lines task protocol —
44
+ `TASK`/`ROLE`/`CONTEXT`/`INSTRUCTION` envelopes in, `REPORT`/`COMPLETION`/
45
+ `ERROR` messages out, parsed into structured reports)
46
+ - Agent factory and registry (`createAgent`, `AgentRegistry`)
47
+ - **Roles & tasks** (`src/roles/`, `src/tasks/`):
48
+ - `RoleRegistry` with assignment validation — a task can only reference roles
49
+ and agents that actually exist
50
+ - Task lifecycle (created → queued → running → completed/failed/cancelled)
51
+ with transition enforcement
52
+ - `TaskEngine` runs tasks through their assigned agent, records structured
53
+ results (summary, reports, errors, timestamps)
54
+ - `TaskStore` interface with a local-first JSON implementation in
55
+ `.omninode/tasks.json` (atomic writes; swap in any backend)
38
56
  - Typed error hierarchy (`src/errors/`)
39
57
  - Leveled logger with pluggable sink (`src/logger/`)
40
58
  - Configuration system: `omninode.yaml` with `${ENV_VAR}` expansion and strict
@@ -76,6 +94,23 @@ omninode agent list
76
94
  omninode role list
77
95
  ```
78
96
 
97
+ Register and verify a CLI agent (anything executable works — `opencode`,
98
+ `kimi`, a custom script):
99
+
100
+ ```bash
101
+ omninode agent add --name opencode --command opencode --input-mode arg
102
+ omninode agent test opencode # sends a trivial task over the real adapter
103
+ ```
104
+
105
+ Create, run and track tasks (the `Project → Task → Role → Agent` chain):
106
+
107
+ ```bash
108
+ omninode task create "audit the auth module" --role security-reviewer --agent opencode
109
+ omninode task run task-xxxxxx
110
+ omninode task status task-xxxxxx
111
+ omninode task list
112
+ ```
113
+
79
114
  See [omninode.yaml.example](omninode.yaml.example) for a full configuration.
80
115
 
81
116
  ### Configuration
@@ -107,9 +142,9 @@ Phases 0–11 are laid out in [docs/DEVELOPMENT_PLAN.md](docs/DEVELOPMENT_PLAN.m
107
142
  | --- | --- |
108
143
  | v0.1.0 | Foundation |
109
144
  | v0.2.0 | Provider System |
110
- | **v0.3.0** | **OmniHilbras Integration (current)** |
145
+ | v0.3.0 | OmniHilbras Integration (optional, like every provider) |
111
146
  | v0.4.0 | Agent System |
112
- | v0.5.0 | Roles & Tasks |
147
+ | **v0.5.0** | **Roles & Tasks (current)** |
113
148
  | v0.6.0 | Pipeline Engine |
114
149
  | v0.7.0 | Multi-AI Reports |
115
150
  | v0.8.0 | Remembera (optional memory integration) |