create-agent-room 1.2.1 → 1.3.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
@@ -27,7 +27,7 @@ Scaffold an LLM-agent-friendly project structure and governance framework into a
27
27
  These features actively constrain behavior and will fail/block operations if violated:
28
28
 
29
29
  - **Agent Guardrails** — Pre-commit hook blocks commits to protected paths or with forbidden patterns (optional; requires `--tools git`)
30
- - **Session Log Validation** — `lint-sessions` command validates all session logs against schema; fails CI with exit code 1 if malformed
30
+ - **Session Log Validation** — `lint-sessions` command validates all session logs against schema; fails CI with exit code 1 if malformed. With the `git` adapter, a `.github/workflows/agent-room-validate.yml` workflow is scaffolded automatically to run `validate` and `lint-sessions` on every push/PR.
31
31
  - **Skill Frontmatter Validation** — `validate` command lints skill YAML headers
32
32
 
33
33
  ### 🟡 Prescriptive Guidance (Requires Human Discipline)
package/lib/init.js CHANGED
@@ -610,6 +610,25 @@ async function runInit(target, args) {
610
610
  } catch (err) {
611
611
  // Ignore if chmod fails (e.g. on Windows)
612
612
  }
613
+
614
+ // Install GitHub Actions workflow that runs validate + lint-sessions in CI
615
+ const ciWorkflowDest = path.join(target, '.github', 'workflows', 'agent-room-validate.yml');
616
+ const ciWorkflowExists = fs.existsSync(ciWorkflowDest);
617
+ results.push(
618
+ Object.assign(
619
+ { path: '.github/workflows/agent-room-validate.yml' },
620
+ copyFileInherited(
621
+ srcDirs,
622
+ path.join('adapters', 'ci', 'github-actions.yml.tmpl'),
623
+ ciWorkflowDest,
624
+ vars,
625
+ opts
626
+ )
627
+ )
628
+ );
629
+ if (!ciWorkflowExists && fs.existsSync(ciWorkflowDest)) {
630
+ createdFiles.push(ciWorkflowDest);
631
+ }
613
632
  } else if (tools.includes('git') && !isGit) {
614
633
  console.warn(yellow('\nWarning: Git adapter requested but target is not a git repository. Skipping pre-commit hook.'));
615
634
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-agent-room",
3
- "version": "1.2.1",
3
+ "version": "1.3.0",
4
4
  "description": "Scaffold an LLM-agent-friendly project structure: AGENTS.md, principles, workflow classifier, anti-patterns/decisions logs, and core skills (brainstorming, writing-plans, TDD, systematic debugging, verification-before-completion).",
5
5
  "bin": {
6
6
  "create-agent-room": "bin/cli.js"
@@ -0,0 +1,20 @@
1
+ name: agent-room-validate
2
+
3
+ on:
4
+ push:
5
+ branches: [{{DEFAULT_BRANCH}}]
6
+ pull_request:
7
+ branches: [{{DEFAULT_BRANCH}}]
8
+
9
+ jobs:
10
+ validate:
11
+ runs-on: ubuntu-latest
12
+ steps:
13
+ - uses: actions/checkout@v4
14
+ - uses: actions/setup-node@v4
15
+ with:
16
+ node-version: "20"
17
+ - name: Validate {{PROJECT_NAME}} agent-room structure
18
+ run: npx --yes create-agent-room@latest validate .
19
+ - name: Lint session logs
20
+ run: npx --yes create-agent-room@latest lint-sessions .