@everydaydevopsio/ballast 3.0.4 → 3.1.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 (34) hide show
  1. package/README.md +9 -7
  2. package/agents/local-dev/content-badges.md +83 -0
  3. package/agents/local-dev/content-env.md +189 -0
  4. package/agents/local-dev/content-license.md +94 -0
  5. package/agents/local-dev/content-mcp.md +64 -0
  6. package/agents/local-dev/templates/claude-header-badges.md +5 -0
  7. package/agents/local-dev/templates/claude-header-license.md +5 -0
  8. package/agents/local-dev/templates/claude-header-mcp.md +5 -0
  9. package/agents/local-dev/templates/claude-header.md +1 -1
  10. package/agents/local-dev/templates/cursor-frontmatter-badges.yaml +8 -0
  11. package/agents/local-dev/templates/cursor-frontmatter-env.yaml +11 -0
  12. package/agents/local-dev/templates/cursor-frontmatter-license.yaml +10 -0
  13. package/agents/local-dev/templates/cursor-frontmatter-mcp.yaml +10 -0
  14. package/agents/local-dev/templates/opencode-frontmatter-badges.yaml +16 -0
  15. package/agents/local-dev/templates/opencode-frontmatter-license.yaml +16 -0
  16. package/agents/local-dev/templates/opencode-frontmatter-mcp.yaml +16 -0
  17. package/agents/logging/content.md +349 -0
  18. package/agents/logging/templates/claude-header.md +5 -0
  19. package/agents/logging/templates/cursor-frontmatter.yaml +11 -0
  20. package/agents/logging/templates/opencode-frontmatter.yaml +22 -0
  21. package/dist/agents.d.ts +1 -1
  22. package/dist/agents.d.ts.map +1 -1
  23. package/dist/agents.js +2 -1
  24. package/dist/agents.js.map +1 -1
  25. package/dist/build.d.ts +16 -11
  26. package/dist/build.d.ts.map +1 -1
  27. package/dist/build.js +70 -25
  28. package/dist/build.js.map +1 -1
  29. package/dist/install.d.ts +5 -0
  30. package/dist/install.d.ts.map +1 -1
  31. package/dist/install.js +27 -15
  32. package/dist/install.js.map +1 -1
  33. package/package.json +10 -10
  34. package/agents/local-dev/content.md +0 -17
package/dist/install.d.ts CHANGED
@@ -21,6 +21,11 @@ export interface InstallOptions {
21
21
  }
22
22
  export interface InstallResult {
23
23
  installed: string[];
24
+ /** Per-rule: which (agent, ruleSuffix) files were written (ruleSuffix '' = main) */
25
+ installedRules: Array<{
26
+ agentId: string;
27
+ ruleSuffix: string;
28
+ }>;
24
29
  skipped: string[];
25
30
  errors: Array<{
26
31
  agent: string;
@@ -1 +1 @@
1
- {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAkDvC,MAAM,WAAW,6BAA6B;IAC5C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC3B,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,GAAE,6BAAkC,GAC1C,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG,IAAI,CAAC,CA2BtD;AAED,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACjD;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,aAAa,CA0C9D;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;;GAGG;AACH,wBAAsB,UAAU,CAC9B,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,MAAM,CAAC,CA0DjB"}
1
+ {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAkDvC,MAAM,WAAW,6BAA6B;IAC5C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC3B,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,GAAE,6BAAkC,GAC1C,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG,IAAI,CAAC,CA2BtD;AAED,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,oFAAoF;IACpF,cAAc,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/D,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACjD;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,aAAa,CAwD9D;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;;GAGG;AACH,wBAAsB,UAAU,CAC9B,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,MAAM,CAAC,CAgEjB"}
package/dist/install.js CHANGED
@@ -83,6 +83,7 @@ async function resolveTargetAndAgents(options = {}) {
83
83
  function install(options) {
84
84
  const { projectRoot, target, agents, force = false, saveConfig: persist } = options;
85
85
  const installed = [];
86
+ const installedRules = [];
86
87
  const skipped = [];
87
88
  const errors = [];
88
89
  if (persist) {
@@ -93,18 +94,28 @@ function install(options) {
93
94
  errors.push({ agent: agentId, error: 'Unknown agent' });
94
95
  continue;
95
96
  }
97
+ let agentInstalled = false;
98
+ let agentSkipped = false;
96
99
  try {
97
- const { dir, file } = (0, build_1.getDestination)(agentId, target, projectRoot);
98
- if (fs_1.default.existsSync(file) && !force) {
99
- skipped.push(agentId);
100
- continue;
101
- }
102
- if (!fs_1.default.existsSync(dir)) {
103
- fs_1.default.mkdirSync(dir, { recursive: true });
100
+ const suffixes = (0, build_1.listRuleSuffixes)(agentId);
101
+ for (const ruleSuffix of suffixes) {
102
+ const { dir, file } = (0, build_1.getDestination)(agentId, target, projectRoot, ruleSuffix || undefined);
103
+ if (fs_1.default.existsSync(file) && !force) {
104
+ agentSkipped = true;
105
+ continue;
106
+ }
107
+ if (!fs_1.default.existsSync(dir)) {
108
+ fs_1.default.mkdirSync(dir, { recursive: true });
109
+ }
110
+ const content = (0, build_1.buildContent)(agentId, target, ruleSuffix || undefined);
111
+ fs_1.default.writeFileSync(file, content, 'utf8');
112
+ installedRules.push({ agentId, ruleSuffix: ruleSuffix || '' });
113
+ agentInstalled = true;
104
114
  }
105
- const content = (0, build_1.buildContent)(agentId, target);
106
- fs_1.default.writeFileSync(file, content, 'utf8');
107
- installed.push(agentId);
115
+ if (agentInstalled)
116
+ installed.push(agentId);
117
+ if (agentSkipped && !agentInstalled)
118
+ skipped.push(agentId);
108
119
  }
109
120
  catch (err) {
110
121
  errors.push({
@@ -113,7 +124,7 @@ function install(options) {
113
124
  });
114
125
  }
115
126
  }
116
- return { installed, skipped, errors };
127
+ return { installed, installedRules, skipped, errors };
117
128
  }
118
129
  /**
119
130
  * Run install flow: resolve target/agents (interactive or from config/flags), then install.
@@ -148,11 +159,12 @@ async function runInstall(options = {}) {
148
159
  });
149
160
  return 1;
150
161
  }
151
- if (result.installed.length > 0) {
162
+ if (result.installedRules.length > 0) {
152
163
  console.log(`Installed for ${target}: ${result.installed.join(', ')}`);
153
- result.installed.forEach((agentId) => {
154
- const { file } = (0, build_1.getDestination)(agentId, target, projectRoot);
155
- console.log(` ${agentId} -> ${file}`);
164
+ result.installedRules.forEach(({ agentId, ruleSuffix }) => {
165
+ const { file } = (0, build_1.getDestination)(agentId, target, projectRoot, ruleSuffix || undefined);
166
+ const label = ruleSuffix ? `${agentId}-${ruleSuffix}` : agentId;
167
+ console.log(` ${label} -> ${file}`);
156
168
  });
157
169
  }
158
170
  if (result.skipped.length > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"install.js","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@everydaydevopsio/ballast",
3
- "version": "3.0.4",
4
- "description": "CLI to install TypeScript AI agent rules (linting, local-dev, CI/CD, observability) for Cursor, Claude Code, and OpenCode",
3
+ "version": "3.1.0",
4
+ "description": "CLI to install TypeScript AI agent rules (linting, local-dev, CI/CD, observability, logging) for Cursor, Claude Code, and OpenCode",
5
5
  "main": "dist/cli.js",
6
6
  "bin": {
7
7
  "ballast": "bin/ballast.js"
@@ -23,22 +23,22 @@
23
23
  },
24
24
  "devDependencies": {
25
25
  "@eslint/js": "^9.39.2",
26
- "@types/jest": "^29.5.14",
27
- "@types/node": "^22.10.1",
28
- "@typescript-eslint/eslint-plugin": "^8.50.1",
29
- "@typescript-eslint/parser": "^8.50.1",
26
+ "@types/jest": "^30.0.0",
27
+ "@types/node": "^25.2.0",
28
+ "@typescript-eslint/eslint-plugin": "^8.54.0",
29
+ "@typescript-eslint/parser": "^8.54.0",
30
30
  "eslint": "^9.39.2",
31
31
  "eslint-config-prettier": "^10.1.8",
32
32
  "eslint-plugin-prettier": "^5.5.4",
33
- "globals": "^16.5.0",
33
+ "globals": "^17.3.0",
34
34
  "husky": "^9.1.7",
35
- "jest": "^29.7.0",
35
+ "jest": "^30.2.0",
36
36
  "lint-staged": "^16.2.7",
37
- "prettier": "^3.7.4",
37
+ "prettier": "^3.8.1",
38
38
  "ts-jest": "^29.2.5",
39
39
  "tsc-files": "^1.1.4",
40
40
  "typescript": "^5.9.3",
41
- "typescript-eslint": "^8.53.1"
41
+ "typescript-eslint": "^8.54.0"
42
42
  },
43
43
  "lint-staged": {
44
44
  "**/*.js": [
@@ -1,17 +0,0 @@
1
- # Local Development Environment Agent
2
-
3
- You are a local development environment specialist for TypeScript/JavaScript projects.
4
-
5
- ## Goals
6
-
7
- - **Reproducible environments**: Help set up and document local dev setup (Node version, env vars, Docker Compose, dev scripts) so anyone can run the project with minimal friction.
8
- - **Developer experience**: Recommend and configure tooling (debugging, hot reload, env validation) and conventions (branch naming, commit hooks) that keep local dev fast and consistent.
9
- - **Documentation**: Keep README and runbooks (e.g. "Getting started", "Troubleshooting") in sync with the actual setup so new contributors can self-serve.
10
-
11
- ## Scope
12
-
13
- - Local run scripts, env files (.env.example), and optional containerized dev (e.g. Docker Compose for services).
14
- - Version managers (nvm, volta) and required Node/npm versions.
15
- - Pre-commit or pre-push hooks that run tests/lint locally before pushing.
16
-
17
- _This agent is a placeholder; full instructions will be expanded in a future release._