@jenga-ai/agent 3.1.0 → 3.2.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.
Files changed (44) hide show
  1. package/README.md +3 -3
  2. package/agents/developer.md +15 -15
  3. package/agents/scrum-master.md +17 -17
  4. package/agents/tester.md +25 -15
  5. package/lib/skill-allow-list.json +3 -2
  6. package/package.json +1 -1
  7. package/scripts/audit-twin-divergence.sh +625 -0
  8. package/scripts/build-pages-site.sh +268 -0
  9. package/scripts/check-public-playbook-steps.sh +136 -0
  10. package/skills/j-close-story/SKILL.md +1 -1
  11. package/skills/j-do/SKILL.md +19 -19
  12. package/skills/j-doc-sync/SKILL.md +12 -1
  13. package/skills/j-idea/SKILL.md +1 -1
  14. package/skills/j-init/SKILL.md +5 -4
  15. package/skills/j-init/assets/directory_structure.txt +1 -0
  16. package/skills/j-init/scripts/detect-existing-codebase.sh +2 -2
  17. package/skills/j-init/scripts/init.sh +13 -2
  18. package/skills/j-playbook/SKILL.md +81 -0
  19. package/skills/j-proceed/SKILL.md +1 -1
  20. package/skills/j-publish/SKILL.md +1 -1
  21. package/skills/j-publish/adapters/npm-ci.md +29 -0
  22. package/skills/j-publish/scripts/npm_ci_pipeline.sh +3 -0
  23. package/skills/j-publish/scripts/npm_pipeline.sh +18 -0
  24. package/skills/j-publish/scripts/npm_stage_pipeline.sh +81 -41
  25. package/skills/j-reconcile/SKILL.md +1 -0
  26. package/skills/j-redo/SKILL.md +1 -1
  27. package/skills/j-status/SKILL.md +12 -0
  28. package/skills/j-todo/SKILL.md +2 -2
  29. package/skills/j-uncharted/SKILL.md +8 -7
  30. package/skills/j-uncharted/scripts/elicitation-state.sh +15 -1
  31. package/skills/j-uncharted/scripts/validate-proposed-items.sh +18 -2
  32. package/skills/jenga/SKILL.md +80 -9
  33. package/skills/jenga/playbooks/idea-to-committed.json +20 -0
  34. package/skills/jenga/playbooks/schema.json +42 -0
  35. package/skills/jenga/scripts/detect-nl-intent.sh +179 -0
  36. package/skills/jenga/scripts/load-nl-catalog.js +206 -0
  37. package/skills/jenga/scripts/load-nl-catalog.sh +65 -0
  38. package/skills/jenga/scripts/load-playbooks.sh +1022 -0
  39. package/skills/jenga/scripts/match-playbook.sh +262 -0
  40. package/skills/jenga/scripts/render-playbook-confirmation.sh +517 -0
  41. package/skills/jenga/scripts/run-playbook-step.sh +766 -0
  42. package/skills/jenga-permission-level/SKILL.md +4 -4
  43. package/templates/KNOWLEDGE_GRAPH_STUB_SCHEMA_TEMPLATE.md +128 -0
  44. package/templates/playbook-types.json +8 -0
@@ -0,0 +1,65 @@
1
+ #!/usr/bin/env bash
2
+ # ---------------------------------------------------------------------------
3
+ # skills/jenga/scripts/load-nl-catalog.sh
4
+ #
5
+ # Thin bash entry point for `load-nl-catalog.js` — the SINGLE REQUIRED SOURCE of skill-catalog
6
+ # data for `/jenga`'s natural-language branch (E53_S01_T03). `skills/jenga/SKILL.md` must never
7
+ # re-implement its own skill directory scan or hand-maintain a skill list; it only ever invokes
8
+ # this script and reads its stdout.
9
+ #
10
+ # This script's only job is root resolution: it locates JENGA_PROJECT_DIR (the consuming
11
+ # project's root) and PKG_ROOT (the jenga-agent PACKAGE root — where the canonical skills/ tree
12
+ # and lib/generate-skill-allow-list.js actually live, which may differ from the project root for
13
+ # an npm-installed consumer) and hands both to the Node helper, which does the actual reading and
14
+ # JSON assembly (see load-nl-catalog.js's own header for the full contract).
15
+ #
16
+ # ---------------------------------------------------------------------------
17
+ # USAGE
18
+ # ---------------------------------------------------------------------------
19
+ # skills/jenga/scripts/load-nl-catalog.sh
20
+ #
21
+ # No arguments. Emits the full JSON catalog array to stdout — see load-nl-catalog.js's header for
22
+ # the exact per-entry shape (name/description/keywords/examples/prefered_agent).
23
+ #
24
+ # ---------------------------------------------------------------------------
25
+ # EXIT CODES
26
+ # ---------------------------------------------------------------------------
27
+ # 0 catalog written to stdout
28
+ # 2 setup failure: package root could not be located, node is missing, or the Node helper
29
+ # itself failed (see its own stderr message for the reason)
30
+ #
31
+ # ---------------------------------------------------------------------------
32
+
33
+ set -euo pipefail
34
+
35
+ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
36
+
37
+ # Resolve JENGA_PROJECT_DIR the same way every other script in skills/jenga/scripts/ does.
38
+ if [ -f "$SCRIPT_DIR/../../../lib/resolve-project-dir.sh" ]; then
39
+ # shellcheck source=/dev/null
40
+ source "$SCRIPT_DIR/../../../lib/resolve-project-dir.sh"
41
+ elif [ -n "${CLAUDE_PROJECT_DIR:-}" ]; then
42
+ JENGA_PROJECT_DIR="$CLAUDE_PROJECT_DIR"
43
+ else
44
+ JENGA_PROJECT_DIR="$(git -C "$SCRIPT_DIR" rev-parse --show-toplevel 2>/dev/null || pwd)"
45
+ fi
46
+
47
+ # Resolve the jenga-agent PACKAGE root (where lib/generate-skill-allow-list.js and the canonical
48
+ # skills/ tree actually live) — same monorepo-checkout vs. installed-npm-package detection used
49
+ # by skills/init/scripts/init.sh's PKG_ROOT resolution.
50
+ if [ -d "$SCRIPT_DIR/../../../templates" ]; then
51
+ PKG_ROOT="$SCRIPT_DIR/../../.."
52
+ elif [ -d "$JENGA_PROJECT_DIR/node_modules/@jenga-ai/agent/templates" ]; then
53
+ PKG_ROOT="$JENGA_PROJECT_DIR/node_modules/@jenga-ai/agent"
54
+ else
55
+ echo "Error: could not locate the jenga-agent package root (templates/ not found via monorepo checkout or node_modules/@jenga-ai/agent)." >&2
56
+ exit 2
57
+ fi
58
+
59
+ if ! command -v node >/dev/null 2>&1; then
60
+ echo "Error: node is required by load-nl-catalog.sh" >&2
61
+ exit 2
62
+ fi
63
+
64
+ node "$SCRIPT_DIR/load-nl-catalog.js" "$JENGA_PROJECT_DIR" "$PKG_ROOT"
65
+ exit $?