@etiquekit/etq 0.0.1 → 1.0.1

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.
Files changed (83) hide show
  1. package/AGENTS.md +28 -0
  2. package/QuickStart.md +94 -0
  3. package/README.md +77 -9
  4. package/bin/etiquette +1149 -0
  5. package/bin/etiquette-core +313 -0
  6. package/docs/ARCHITECTURE.md +100 -0
  7. package/docs/CODEX_CLIENT_COMPATIBILITY.md +83 -0
  8. package/docs/CONCEPTS.md +128 -0
  9. package/docs/CONCEPT_STATUS.md +67 -0
  10. package/docs/CORE_PROFILE.md +70 -0
  11. package/docs/LANE_PROVISIONING.md +157 -0
  12. package/docs/README.md +29 -0
  13. package/docs/RELEASE_SURFACE_AUDIT.md +156 -0
  14. package/docs/SEAT_DISCIPLINE.md +68 -0
  15. package/docs/SEAT_PROVISIONING.md +100 -0
  16. package/docs/TEAM_HANDOFF.md +190 -0
  17. package/docs/WORKTREE_QOL.md +92 -0
  18. package/docs/contracts/ledger-entry/README.md +83 -0
  19. package/docs/contracts/ledger-entry/ledger-entry.v0.1.md +116 -0
  20. package/docs/contracts/ledger-entry/ledger-entry.v0.2.md +90 -0
  21. package/docs/contracts/ledger-entry/ledger-entry.v0.md +123 -0
  22. package/docs/contracts/ledger-entry/ledger-query-cli.v0.1.md +64 -0
  23. package/package.json +42 -11
  24. package/scripts/install.sh +144 -0
  25. package/scripts/uninstall.sh +58 -0
  26. package/templates/etiquette-vanilla-v0/README.md +69 -0
  27. package/templates/etiquette-vanilla-v0/bin/stamp-vanilla +33 -0
  28. package/templates/etiquette-vanilla-v0/source/control-seat/.llm-substrate/HANDOFF.md +22 -0
  29. package/templates/etiquette-vanilla-v0/source/control-seat/README.md +16 -0
  30. package/templates/etiquette-vanilla-v0/source/control-seat/bin/_lib/http.sh +121 -0
  31. package/templates/etiquette-vanilla-v0/source/control-seat/bin/_lib/sanitize.sh +191 -0
  32. package/templates/etiquette-vanilla-v0/source/control-seat/bin/_lib/state.sh +67 -0
  33. package/templates/etiquette-vanilla-v0/source/control-seat/bin/access-assurance-check +55 -0
  34. package/templates/etiquette-vanilla-v0/source/control-seat/bin/compact-local-events +71 -0
  35. package/templates/etiquette-vanilla-v0/source/control-seat/bin/hooks/post-tool-use +64 -0
  36. package/templates/etiquette-vanilla-v0/source/control-seat/bin/hooks/session-end +64 -0
  37. package/templates/etiquette-vanilla-v0/source/control-seat/bin/hooks/session-start +64 -0
  38. package/templates/etiquette-vanilla-v0/source/control-seat/bin/hooks/stop +64 -0
  39. package/templates/etiquette-vanilla-v0/source/control-seat/bin/hooks/user-prompt-submit +64 -0
  40. package/templates/etiquette-vanilla-v0/source/control-seat/bin/local-event +53 -0
  41. package/templates/etiquette-vanilla-v0/source/control-seat/bin/post-receipt +143 -0
  42. package/templates/etiquette-vanilla-v0/source/control-seat/bin/post-telemetry +112 -0
  43. package/templates/etiquette-vanilla-v0/source/control-seat/bin/seat-consume-pass +115 -0
  44. package/templates/etiquette-vanilla-v0/source/control-seat/bin/seat-doctor +20 -0
  45. package/templates/etiquette-vanilla-v0/source/control-seat/bin/seat-init +86 -0
  46. package/templates/etiquette-vanilla-v0/source/control-seat/bin/seat-post-readiness +171 -0
  47. package/templates/etiquette-vanilla-v0/source/control-seat/bin/session-init +132 -0
  48. package/templates/etiquette-vanilla-v0/source/control-seat/docs/work/access/ACCESS-ASSURANCE.md +39 -0
  49. package/templates/etiquette-vanilla-v0/source/control-seat/docs/work/access/workspace-secure-profile.v0.json +53 -0
  50. package/templates/etiquette-vanilla-v0/source/control-seat/docs/work/ledger/LEDGER.md +7 -0
  51. package/templates/etiquette-vanilla-v0/source/control-seat/docs/work/playbacks/PLAYBACK_TEMPLATE.md +31 -0
  52. package/templates/etiquette-vanilla-v0/source/control-seat/docs/work/receipts/.gitkeep +1 -0
  53. package/templates/etiquette-vanilla-v0/source/control-seat/docs/work/tasks/CONTROL-001.yaml +13 -0
  54. package/templates/etiquette-vanilla-v0/source/etiquette-kernel/README.md +6 -0
  55. package/templates/etiquette-vanilla-v0/source/etiquette-kernel/bin/kernel-doctor +11 -0
  56. package/templates/etiquette-vanilla-v0/source/etiquette-kernel/contracts/playback.v0.md +37 -0
  57. package/templates/etiquette-vanilla-v0/source/etiquette-kernel/contracts/receipt.v0.md +25 -0
  58. package/templates/etiquette-vanilla-v0/source/etiquette-kernel/contracts/seat-readiness.v0.md +22 -0
  59. package/templates/etiquette-vanilla-v0/source/etiquette-kernel/contracts/task.v0.md +18 -0
  60. package/templates/etiquette-vanilla-v0/validate-vanilla.sh +43 -0
  61. package/templates/github-actions/README.md +30 -0
  62. package/templates/github-actions/w1-webhook-wake-canary.yml +111 -0
  63. package/templates/hosted-receiver/README.md +41 -0
  64. package/templates/hosted-receiver/w1-github-webhook-receiver.mjs +129 -0
  65. package/templates/seat-packs-v0/README.md +72 -0
  66. package/templates/seat-packs-v0/bin/provision-seat +70 -0
  67. package/templates/seat-packs-v0/source/claude-code-seat/.llm-substrate/HANDOFF.md +24 -0
  68. package/templates/seat-packs-v0/source/claude-code-seat/README.md +19 -0
  69. package/templates/seat-packs-v0/source/claude-code-seat/bin/seat-doctor +8 -0
  70. package/templates/seat-packs-v0/source/codex-seat/.llm-substrate/HANDOFF.md +25 -0
  71. package/templates/seat-packs-v0/source/codex-seat/README.md +22 -0
  72. package/templates/seat-packs-v0/source/codex-seat/bin/seat-doctor +8 -0
  73. package/templates/seat-packs-v0/source/gemini-seat/.llm-substrate/HANDOFF.md +23 -0
  74. package/templates/seat-packs-v0/source/gemini-seat/README.md +19 -0
  75. package/templates/seat-packs-v0/source/gemini-seat/bin/seat-doctor +8 -0
  76. package/templates/seat-packs-v0/source/ollama-seat/.llm-substrate/HANDOFF.md +24 -0
  77. package/templates/seat-packs-v0/source/ollama-seat/README.md +19 -0
  78. package/templates/seat-packs-v0/source/ollama-seat/bin/seat-doctor +8 -0
  79. package/templates/seat-packs-v0/source/openrouter-seat/.llm-substrate/HANDOFF.md +24 -0
  80. package/templates/seat-packs-v0/source/openrouter-seat/README.md +19 -0
  81. package/templates/seat-packs-v0/source/openrouter-seat/bin/seat-doctor +8 -0
  82. package/templates/seat-packs-v0/validate-seat-packs.sh +27 -0
  83. package/bin/etq +0 -4
@@ -0,0 +1,25 @@
1
+ # Codex Seat Handoff
2
+
3
+ You are an Etiquette Codex seat.
4
+
5
+ ## Startup
6
+
7
+ 1. Run `sh bin/seat-doctor`.
8
+ 2. Use `etiquette notify poll --seat <id> --after-seq <n>` for cursor-based wake checks.
9
+ 3. Read the target project's head-start surfaces.
10
+ 4. Report readiness before claiming work.
11
+
12
+ ## Default Capability
13
+
14
+ ```yaml
15
+ seat_type: execution_seat | review_seat
16
+ execution_surface: codex
17
+ supported_strategies:
18
+ - solo
19
+ - telescope
20
+ - manifold
21
+ blocked_strategies:
22
+ - required_cross_runtime_without_backplane
23
+ ```
24
+
25
+ Do not clone product repos until assigned.
@@ -0,0 +1,22 @@
1
+ # Codex Seat
2
+
3
+ Optional Etiquette seat template for a Codex runtime.
4
+
5
+ Use this only after the control seat grants a Codex execution or review seat.
6
+
7
+ ## Head-Start
8
+
9
+ Before pickup in the target project, read:
10
+
11
+ 1. `AGENTS.md`
12
+ 2. `docs/work/BOARD.md`
13
+ 3. `docs/work/runbooks/SESSION_PICKUP.md`
14
+ 4. `docs/work/manuals/SEAT_OPERATING_MANUAL.md`
15
+ 5. `docs/work/cookbooks/ADD_A_LANE.md` when routing new work
16
+
17
+ Use `$etiquette-seat-lifecycle` before pickup after stale context, resume,
18
+ runner/model/profile swaps, or workflow migration. Hooks and readiness are
19
+ evidence only; the task envelope is the work authority.
20
+
21
+ For bounded, cursor-based wake checks use the portable core command
22
+ `etiquette notify poll --seat <id> --after-seq <n>` instead of raw `tail -F` monitors.
@@ -0,0 +1,8 @@
1
+ #!/bin/sh
2
+ set -eu
3
+ ROOT=$(CDPATH= cd -- "$(dirname -- "$0")/.." && pwd)
4
+ test -f "$ROOT/.llm-substrate/HANDOFF.md"
5
+ if [ "${ETIQUETTE_REQUIRE_RUNTIME:-0}" = "1" ]; then
6
+ command -v codex >/dev/null 2>&1
7
+ fi
8
+ echo "codex-seat: ok"
@@ -0,0 +1,23 @@
1
+ # Gemini Seat Handoff
2
+
3
+ You are an Etiquette Gemini seat.
4
+
5
+ ## Startup
6
+
7
+ 1. Run `sh bin/seat-doctor`.
8
+ 2. Read the target project's head-start surfaces.
9
+ 3. Report readiness before claiming work.
10
+
11
+ ## Default Capability
12
+
13
+ ```yaml
14
+ seat_type: execution_seat | review_seat
15
+ execution_surface: gemini_cli
16
+ supported_strategies:
17
+ - solo
18
+ - telescope
19
+ blocked_strategies:
20
+ - required_parallel_without_adapter
21
+ ```
22
+
23
+ Do not clone product repos until assigned.
@@ -0,0 +1,19 @@
1
+ # Gemini Seat
2
+
3
+ Optional Etiquette seat template for a Gemini CLI runtime.
4
+
5
+ Use this only after the control seat grants a Gemini execution or review seat.
6
+
7
+ ## Head-Start
8
+
9
+ Before pickup in the target project, read:
10
+
11
+ 1. `AGENTS.md`
12
+ 2. `docs/work/BOARD.md`
13
+ 3. `docs/work/runbooks/SESSION_PICKUP.md`
14
+ 4. `docs/work/manuals/SEAT_OPERATING_MANUAL.md`
15
+ 5. `docs/work/cookbooks/ADD_A_LANE.md` when routing new work
16
+
17
+ Use `$etiquette-seat-lifecycle` before pickup after stale context, resume,
18
+ runner/model/profile swaps, or workflow migration. Hooks and readiness are
19
+ evidence only; the task envelope is the work authority.
@@ -0,0 +1,8 @@
1
+ #!/bin/sh
2
+ set -eu
3
+ ROOT=$(CDPATH= cd -- "$(dirname -- "$0")/.." && pwd)
4
+ test -f "$ROOT/.llm-substrate/HANDOFF.md"
5
+ if [ "${ETIQUETTE_REQUIRE_RUNTIME:-0}" = "1" ]; then
6
+ command -v gemini >/dev/null 2>&1
7
+ fi
8
+ echo "gemini-seat: ok"
@@ -0,0 +1,24 @@
1
+ # Ollama Seat Handoff
2
+
3
+ You are an Etiquette Ollama seat.
4
+
5
+ ## Startup
6
+
7
+ 1. Run `sh bin/seat-doctor`.
8
+ 2. Read the target project's head-start surfaces.
9
+ 3. Report readiness before claiming work.
10
+
11
+ ## Default Capability
12
+
13
+ ```yaml
14
+ seat_type: execution_seat | review_seat
15
+ execution_surface: ollama
16
+ supported_strategies:
17
+ - solo
18
+ - telescope
19
+ blocked_strategies:
20
+ - required_remote_api_without_adapter
21
+ - required_parallel_without_adapter
22
+ ```
23
+
24
+ Do not clone product repos until assigned.
@@ -0,0 +1,19 @@
1
+ # Ollama Seat
2
+
3
+ Optional Etiquette seat template for a local Ollama runtime.
4
+
5
+ Use this only after the control seat grants an Ollama execution or review seat.
6
+
7
+ ## Head-Start
8
+
9
+ Before pickup in the target project, read:
10
+
11
+ 1. `AGENTS.md`
12
+ 2. `docs/work/BOARD.md`
13
+ 3. `docs/work/runbooks/SESSION_PICKUP.md`
14
+ 4. `docs/work/manuals/SEAT_OPERATING_MANUAL.md`
15
+ 5. `docs/work/cookbooks/ADD_A_LANE.md` when routing new work
16
+
17
+ Use `$etiquette-seat-lifecycle` before pickup after stale context, resume,
18
+ runner/model/profile swaps, or workflow migration. Hooks and readiness are
19
+ evidence only; the task envelope is the work authority.
@@ -0,0 +1,8 @@
1
+ #!/bin/sh
2
+ set -eu
3
+ ROOT=$(CDPATH= cd -- "$(dirname -- "$0")/.." && pwd)
4
+ test -f "$ROOT/.llm-substrate/HANDOFF.md"
5
+ if [ "${ETIQUETTE_REQUIRE_RUNTIME:-0}" = "1" ]; then
6
+ command -v ollama >/dev/null 2>&1
7
+ fi
8
+ echo "ollama-seat: ok"
@@ -0,0 +1,24 @@
1
+ # OpenRouter Seat Handoff
2
+
3
+ You are an Etiquette OpenRouter seat.
4
+
5
+ ## Startup
6
+
7
+ 1. Run `sh bin/seat-doctor`.
8
+ 2. Read the target project's head-start surfaces.
9
+ 3. Report readiness before claiming work.
10
+
11
+ ## Default Capability
12
+
13
+ ```yaml
14
+ seat_type: execution_seat | review_seat
15
+ execution_surface: openrouter
16
+ supported_strategies:
17
+ - solo
18
+ - telescope
19
+ blocked_strategies:
20
+ - required_local_tool_execution_without_adapter
21
+ - required_parallel_without_adapter
22
+ ```
23
+
24
+ Do not clone product repos until assigned. Do not embed API keys in receipts.
@@ -0,0 +1,19 @@
1
+ # OpenRouter Seat
2
+
3
+ Optional Etiquette seat template for an OpenRouter-backed runtime.
4
+
5
+ Use this only after the control seat grants an OpenRouter execution or review seat.
6
+
7
+ ## Head-Start
8
+
9
+ Before pickup in the target project, read:
10
+
11
+ 1. `AGENTS.md`
12
+ 2. `docs/work/BOARD.md`
13
+ 3. `docs/work/runbooks/SESSION_PICKUP.md`
14
+ 4. `docs/work/manuals/SEAT_OPERATING_MANUAL.md`
15
+ 5. `docs/work/cookbooks/ADD_A_LANE.md` when routing new work
16
+
17
+ Use `$etiquette-seat-lifecycle` before pickup after stale context, resume,
18
+ runner/model/profile swaps, or workflow migration. Hooks and readiness are
19
+ evidence only; the task envelope is the work authority.
@@ -0,0 +1,8 @@
1
+ #!/bin/sh
2
+ set -eu
3
+ ROOT=$(CDPATH= cd -- "$(dirname -- "$0")/.." && pwd)
4
+ test -f "$ROOT/.llm-substrate/HANDOFF.md"
5
+ if [ "${ETIQUETTE_REQUIRE_RUNTIME:-0}" = "1" ]; then
6
+ test -n "${OPENROUTER_API_KEY:-}"
7
+ fi
8
+ echo "openrouter-seat: ok"
@@ -0,0 +1,27 @@
1
+ #!/bin/sh
2
+ set -eu
3
+
4
+ ROOT=$(CDPATH= cd -- "$(dirname -- "$0")" && pwd)
5
+
6
+ for seat in codex-seat claude-code-seat gemini-seat openrouter-seat ollama-seat; do
7
+ test -d "$ROOT/source/$seat"
8
+ sh "$ROOT/source/$seat/bin/seat-doctor"
9
+ done
10
+
11
+ tmp="${TMPDIR:-/tmp}/etiquette-seat-pack-provision-check-$$"
12
+ sh "$ROOT/bin/provision-seat" codex "$tmp"
13
+ sh "$tmp/bin/seat-doctor"
14
+
15
+ fakebin="${TMPDIR:-/tmp}/etiquette-seat-pack-auto-bin-$$"
16
+ autotmp="${TMPDIR:-/tmp}/etiquette-seat-pack-auto-check-$$"
17
+ mkdir -p "$fakebin"
18
+ if [ -x /usr/bin/true ]; then
19
+ true_cmd=/usr/bin/true
20
+ else
21
+ true_cmd=/bin/true
22
+ fi
23
+ ln -s "$true_cmd" "$fakebin/codex"
24
+ PATH="$fakebin:/bin:/usr/bin" sh "$ROOT/bin/provision-seat" auto "$autotmp"
25
+ sh "$autotmp/bin/seat-doctor"
26
+
27
+ echo "seat-packs: ok"
package/bin/etq DELETED
@@ -1,4 +0,0 @@
1
- #!/usr/bin/env node
2
- console.log("Etiquette (etq) — local-first governance for agent-assisted engineering.");
3
- console.log("This name is reserved; releases begin at https://etiquekit.com");
4
- process.exit(0);