hanoman 0.2.0 → 0.2.2

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.
@@ -91,7 +91,8 @@ host-mu benar dan masalahnya ada pada token atau master switch.
91
91
  ## 3. Capability
92
92
 
93
93
  Capability berformat `"<domain>:<access>"`, `access ∈ {read, write}`, dan **write meng-implikasikan
94
- read** pada domain yang sama. Ada **12 domain × 2 = 24 capability**. Katalog resmi (dengan label &
94
+ read** pada domain yang sama. Ada **13 domain**; empat di antaranya punya akses KETIGA `danger`
95
+ (ADR-0155) yang **tak diimplikasikan `:write`**, sehingga totalnya **30 capability**. Katalog resmi (dengan label &
95
96
  deskripsi) tampil di panel **Settings → Akses AI Agent** saat manusia membuat token; endpoint
96
97
  katalognya (`GET /api/agent-tokens/capabilities`) bersifat **cookie-only** (lihat §5) — kamu tak
97
98
  perlu mengambilnya, cukup rujuk tabel di bawah:
@@ -110,6 +111,7 @@ perlu mengambilnya, cukup rujuk tabel di bawah:
110
111
  | `lead` | `/api/lead*` | minta putusan ke hanoman-lead & baca jejaknya — **`lead:write` bisa menggerakkan sesi** (ADR-0091) |
111
112
  | `agents` | `/api/custom-agents*` | katalog custom agent global & per project — **`agents:write` mengubah apa yang dilihat SETIAP sesi baru** (ADR-0094) |
112
113
  | `telegram` | `/api/telegram*` kecuali sub-path kredensial | context/memory/reply/audit kanal operator Telegram (ADR-0096) |
114
+ | `team` | `/api/tasks*`, `/api/members*` | papan **Tim**: kartu kerja MANUSIA & direktori anggota (ADR-0157). `status` kartu milik manusia — ia **bukan** `stage` backlog. `POST /api/tasks/:id/escalate` melahirkan backlog item dan tetap `team:write` (cermin `POST /api/tickets/:id/accept`) |
113
115
 
114
116
  Aturan pemetaan **deterministik** (`server/src/services/agent-capabilities.ts`): `GET`/`HEAD` →
115
117
  `:read`, metode lain → `:write`. Itu berlaku untuk domain `lead` juga — **`POST /api/lead/decisions`
@@ -118,6 +120,12 @@ permanen dan keputusannya bisa menggerakkan sesi. Sub-path `/api/projects/:id/{d
118
120
  domain **`docs`**; sub-path IDE/git di atas dihitung domain **`ide`**; WebSocket terminal butuh
119
121
  **`sessions:write`**.
120
122
 
123
+ Empat endpoint STATUS tak menuntut capability sama sekali — token sah mana pun boleh membacanya
124
+ (`GLOBAL_READ`, ADR-0157): `GET /api/limits`, `GET /api/limits/codex`, `GET /api/update`, dan
125
+ `GET /api/fs/browse` (menelusuri folder mesin untuk mengisi `repoDir`). Hanya method BACA:
126
+ `POST /api/update/apply` me-restart instance dan tetap **403** untuk agent token, apa pun
127
+ capability-nya (SPEC-405/ADR-0088) — prefix yang sama tak menurunkan gerbangnya.
128
+
121
129
  ## 4. Aturan gate & kode status
122
130
 
123
131
  Gate `onRequest` yang sama menegakkan semuanya:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hanoman",
3
- "version": "0.2.0",
3
+ "version": "0.2.2",
4
4
  "description": "Orchestrator + dashboard workflow docs-driven untuk sesi Claude Code / Codex",
5
5
  "type": "module",
6
6
  "repository": {