@ryuenn3123/agentic-senior-core 4.2.3 → 4.2.4

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
@@ -26,6 +26,7 @@ Options:
26
26
  - Add `--mcp-template` to generate VS Code MCP workspace config.
27
27
  - Default init keeps MCP files opt-in.
28
28
  - Add `--no-token-optimize` only when you do not want ASCX command guidance enabled.
29
+ - Add `--local-only` to ignore instructions (AGENTS.md, .agent-context/, and bridges) in .gitignore so they are not pushed to GitHub.
29
30
  - Local backup snapshots are written under `.agentic-backup/` and excluded from version control.
30
31
 
31
32
  ## Upgrade
@@ -12,6 +12,15 @@ const RUNTIME_ARTIFACT_GITIGNORE_ENTRIES = [
12
12
  ];
13
13
  const RUNTIME_ARTIFACT_GITIGNORE_COMMENT = '# agentic-senior-core: local runtime artifacts';
14
14
 
15
+ const GOVERNANCE_GITIGNORE_ENTRIES = [
16
+ '.agent-context/',
17
+ 'AGENTS.md',
18
+ 'CLAUDE.md',
19
+ 'GEMINI.md',
20
+ 'mcp.json',
21
+ ];
22
+ const GOVERNANCE_GITIGNORE_COMMENT = '# agentic-senior-core: local-only governance files';
23
+
15
24
  /**
16
25
  * Calculates a SHA-256 hash of a file's contents.
17
26
  */
@@ -192,3 +201,10 @@ export async function ensureRuntimeArtifactGitignoreEntries(targetDirectoryPath)
192
201
  entries: RUNTIME_ARTIFACT_GITIGNORE_ENTRIES,
193
202
  });
194
203
  }
204
+
205
+ export async function ensureLocalGovernanceGitignoreEntries(targetDirectoryPath) {
206
+ return ensureGitignoreEntries(targetDirectoryPath, {
207
+ comment: GOVERNANCE_GITIGNORE_COMMENT,
208
+ entries: GOVERNANCE_GITIGNORE_ENTRIES,
209
+ });
210
+ }
@@ -49,6 +49,7 @@ import {
49
49
  createBackup,
50
50
  ensureBackupGitignoreEntry,
51
51
  ensureRuntimeArtifactGitignoreEntries,
52
+ ensureLocalGovernanceGitignoreEntries,
52
53
  } from '../backup.mjs';
53
54
  import {
54
55
  runProjectDiscovery,
@@ -384,6 +385,25 @@ export async function runInitCommand(targetDirectoryArgument, initOptions = {})
384
385
  );
385
386
  }
386
387
 
388
+ const shouldKeepLocalOnly = typeof initOptions.localOnly === 'boolean'
389
+ ? initOptions.localOnly
390
+ : isInteractiveSession
391
+ ? await askYesNo(
392
+ 'Add AI instructions and governance files to .gitignore? (Prevents pushing them to GitHub/Git)',
393
+ userInterface,
394
+ false
395
+ )
396
+ : false;
397
+
398
+ if (shouldKeepLocalOnly) {
399
+ const localGovernanceGitignoreResult = await ensureLocalGovernanceGitignoreEntries(resolvedTargetDirectoryPath);
400
+ if (localGovernanceGitignoreResult.status !== 'unchanged') {
401
+ console.log(
402
+ `AI governance files ignored in .gitignore (${localGovernanceGitignoreResult.addedEntries.join(', ')}).`
403
+ );
404
+ }
405
+ }
406
+
387
407
  await copyGovernanceAssetsToTarget(resolvedTargetDirectoryPath, {
388
408
  includeMcpTemplate: shouldIncludeMcpTemplate,
389
409
  });
@@ -523,6 +543,7 @@ export async function runInitCommand(targetDirectoryArgument, initOptions = {})
523
543
  selectedBlueprintFileName: selectedResolvedBlueprintFileName,
524
544
  selectedAdditionalBlueprintFileNames,
525
545
  includeCiGuardrails,
546
+ localOnly: shouldKeepLocalOnly,
526
547
  setupDurationMs,
527
548
  projectDetection,
528
549
  runtimeEnvironment: {
@@ -145,6 +145,7 @@ export async function writeOnboardingReport({
145
145
  selectedBlueprintFileName,
146
146
  selectedAdditionalBlueprintFileNames = [],
147
147
  includeCiGuardrails,
148
+ localOnly = false,
148
149
  setupDurationMs,
149
150
  projectDetection,
150
151
  runtimeEnvironment = null,
@@ -197,6 +198,7 @@ export async function writeOnboardingReport({
197
198
  agentDecisionRequired: !hasExplicitRuntimeDecision,
198
199
  },
199
200
  ciGuardrailsEnabled: includeCiGuardrails,
201
+ localOnly,
200
202
  setupDurationMs,
201
203
  runtimeEnvironment,
202
204
  containerizationStrategy: buildContainerizationStrategySnapshot(dockerStrategy),
@@ -24,6 +24,7 @@ export function parseInitArguments(commandArguments) {
24
24
  memoryContinuity: true,
25
25
  tokenAgent: 'copilot',
26
26
  includeMcpTemplate: false,
27
+ localOnly: undefined,
27
28
  scaffoldDocs: undefined,
28
29
  docsLang: 'en',
29
30
  docsLangProvided: false,
@@ -143,6 +144,16 @@ export function parseInitArguments(commandArguments) {
143
144
  continue;
144
145
  }
145
146
 
147
+ if (currentArgument === '--local-only') {
148
+ parsedInitOptions.localOnly = true;
149
+ continue;
150
+ }
151
+
152
+ if (currentArgument === '--no-local-only') {
153
+ parsedInitOptions.localOnly = false;
154
+ continue;
155
+ }
156
+
146
157
  if (currentArgument === '--scaffold-docs') {
147
158
  parsedInitOptions.scaffoldDocs = true;
148
159
  continue;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ryuenn3123/agentic-senior-core",
3
- "version": "4.2.3",
3
+ "version": "4.2.4",
4
4
  "type": "module",
5
5
  "description": "Change your AI Agent to code like a Staff Engineer, not a Junior.",
6
6
  "bin": {