logicstamp-context 0.2.6 → 0.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.
Files changed (63) hide show
  1. package/LLM_CONTEXT.md +2 -2
  2. package/README.md +79 -36
  3. package/dist/cli/commands/context.d.ts.map +1 -1
  4. package/dist/cli/commands/context.js +36 -10
  5. package/dist/cli/commands/context.js.map +1 -1
  6. package/dist/cli/commands/ignore.d.ts +16 -0
  7. package/dist/cli/commands/ignore.d.ts.map +1 -0
  8. package/dist/cli/commands/ignore.js +61 -0
  9. package/dist/cli/commands/ignore.js.map +1 -0
  10. package/dist/cli/commands/init.d.ts +4 -0
  11. package/dist/cli/commands/init.d.ts.map +1 -1
  12. package/dist/cli/commands/init.js +83 -9
  13. package/dist/cli/commands/init.js.map +1 -1
  14. package/dist/cli/commands/security.d.ts +37 -0
  15. package/dist/cli/commands/security.d.ts.map +1 -0
  16. package/dist/cli/commands/security.js +304 -0
  17. package/dist/cli/commands/security.js.map +1 -0
  18. package/dist/cli/handlers/ignoreHandler.d.ts +5 -0
  19. package/dist/cli/handlers/ignoreHandler.d.ts.map +1 -0
  20. package/dist/cli/handlers/ignoreHandler.js +23 -0
  21. package/dist/cli/handlers/ignoreHandler.js.map +1 -0
  22. package/dist/cli/handlers/securityHandler.d.ts +5 -0
  23. package/dist/cli/handlers/securityHandler.d.ts.map +1 -0
  24. package/dist/cli/handlers/securityHandler.js +41 -0
  25. package/dist/cli/handlers/securityHandler.js.map +1 -0
  26. package/dist/cli/parser/argumentParser.d.ts +9 -0
  27. package/dist/cli/parser/argumentParser.d.ts.map +1 -1
  28. package/dist/cli/parser/argumentParser.js +50 -0
  29. package/dist/cli/parser/argumentParser.js.map +1 -1
  30. package/dist/cli/parser/helpText.d.ts +3 -0
  31. package/dist/cli/parser/helpText.d.ts.map +1 -1
  32. package/dist/cli/parser/helpText.js +492 -348
  33. package/dist/cli/parser/helpText.js.map +1 -1
  34. package/dist/cli/stamp.js +61 -1
  35. package/dist/cli/stamp.js.map +1 -1
  36. package/dist/core/pack/builder.d.ts.map +1 -1
  37. package/dist/core/pack/builder.js +25 -5
  38. package/dist/core/pack/builder.js.map +1 -1
  39. package/dist/core/pack/loader.d.ts +14 -0
  40. package/dist/core/pack/loader.d.ts.map +1 -1
  41. package/dist/core/pack/loader.js +86 -2
  42. package/dist/core/pack/loader.js.map +1 -1
  43. package/dist/core/pack.d.ts.map +1 -1
  44. package/dist/core/pack.js +15 -2
  45. package/dist/core/pack.js.map +1 -1
  46. package/dist/utils/codeSanitizer.d.ts +24 -0
  47. package/dist/utils/codeSanitizer.d.ts.map +1 -0
  48. package/dist/utils/codeSanitizer.js +234 -0
  49. package/dist/utils/codeSanitizer.js.map +1 -0
  50. package/dist/utils/gitignore.d.ts +30 -2
  51. package/dist/utils/gitignore.d.ts.map +1 -1
  52. package/dist/utils/gitignore.js +132 -20
  53. package/dist/utils/gitignore.js.map +1 -1
  54. package/dist/utils/secretDetector.d.ts +21 -0
  55. package/dist/utils/secretDetector.d.ts.map +1 -0
  56. package/dist/utils/secretDetector.js +145 -0
  57. package/dist/utils/secretDetector.js.map +1 -0
  58. package/dist/utils/stampignore.d.ts +49 -0
  59. package/dist/utils/stampignore.d.ts.map +1 -0
  60. package/dist/utils/stampignore.js +211 -0
  61. package/dist/utils/stampignore.js.map +1 -0
  62. package/package.json +1 -1
  63. package/schema/logicstamp.context.schema.json +1 -1
package/LLM_CONTEXT.md CHANGED
@@ -88,7 +88,7 @@ The `context_main.json` file serves as a directory index:
88
88
  }
89
89
  ],
90
90
  "meta": {
91
- "source": "logicstamp-context@0.2.6"
91
+ "source": "logicstamp-context@0.3.0"
92
92
  }
93
93
  }
94
94
  ```
@@ -111,7 +111,7 @@ Each folder's `context.json` contains an array of LogicStamp bundles. Each bundl
111
111
  - `graph.edges` lists dependency relationships between nodes (empty when analysis depth is 1).
112
112
  - `meta` section contains two critical fields:
113
113
  - `missing`: Array of unresolved dependencies. Each entry includes `name` (import path), `reason` (why it failed), and `referencedBy` (source component). Empty array indicates complete dependency resolution.
114
- - `source`: Generator version string (e.g., `"logicstamp-context@0.2.6"`) for compatibility tracking.
114
+ - `source`: Generator version string (e.g., `"logicstamp-context@0.3.0"`) for compatibility tracking.
115
115
  - Example bundle skeleton:
116
116
 
117
117
  ```
package/README.md CHANGED
@@ -1,10 +1,10 @@
1
1
  # LogicStamp Context
2
2
 
3
3
  <div align="center">
4
- <img src="https://raw.githubusercontent.com/LogicStamp/logicstamp-context/main/assets/logicstamp-fox.svg" alt="LogicStamp Fox Mascot" width="120" height="120">
4
+ <img src="./assets/logicstamp-fox.svg" alt="LogicStamp Fox Mascot" width="120" height="120">
5
5
  </div>
6
6
 
7
- ![Version](https://img.shields.io/badge/version-0.2.6-blue.svg)
7
+ ![Version](https://img.shields.io/badge/version-0.3.0-blue.svg)
8
8
  ![Beta](https://img.shields.io/badge/status-beta-orange.svg)
9
9
  ![License](https://img.shields.io/badge/license-MIT-green.svg)
10
10
  ![Node](https://img.shields.io/badge/node-%3E%3D18.0.0-brightgreen.svg)
@@ -12,27 +12,34 @@
12
12
 
13
13
  **A tiny CLI that compiles your React/TypeScript codebase into machine-readable context bundles for AI and CI. Fast, deterministic, zero-config.**
14
14
 
15
- ## Quick Start
15
+ ![LogicStamp Context in action](./assets/logicstamp-context-demo.gif)
16
+ *Sample stamp context output with generated bundles*
17
+
18
+ ## 🚀 Quick Start
16
19
 
17
- **Global CLI (recommended):**
20
+ **Try it in 30 seconds (no install required):**
18
21
  ```bash
19
- npm install -g logicstamp-context
20
- cd your-project
21
- stamp context
22
+ npx logicstamp-context context
22
23
  ```
23
24
 
24
- **OR local:**
25
+ ⏱️ Scans your repo and writes `context.json` files + `context_main.json` for AI tools.
26
+
27
+ **What you'll get:**
28
+ - 📁 `context.json` files (one per folder with components)
29
+ - 📋 `context_main.json` index file with project overview
30
+
31
+ **For a complete setup (recommended):**
25
32
  ```bash
26
- npm install -D logicstamp-context
27
- npx stamp context
33
+ npm install -g logicstamp-context
34
+ stamp init # security scan by default
35
+ stamp context
28
36
  ```
29
37
 
30
- That's it! LogicStamp Context will scan your project and generate `context.json` files organized by folder, plus a `context_main.json` index file. Share these files with AI assistants for instant codebase understanding.
38
+ > **💡 First time?** Run `stamp init` to set up `.gitignore` patterns and scan for secrets.
31
39
 
32
- ![LogicStamp Context in action](https://raw.githubusercontent.com/LogicStamp/logicstamp-context/main/assets/demo-screenshot.png)
33
- *Sample stamp context output with generated bundles*
40
+ > **ℹ️** If you see `"PRIVATE_DATA"` in output, see the **Security** section below.
34
41
 
35
- > **Note:** This is a beta release (v0.2.6). We're actively improving the tool based on user feedback. If you encounter any issues or have suggestions, please [open an issue on GitHub](https://github.com/LogicStamp/logicstamp-context/issues).
42
+ > **Note:** This is a beta release (v0.3.0). We're actively improving the tool based on user feedback. If you encounter any issues or have suggestions, please [open an issue on GitHub](https://github.com/LogicStamp/logicstamp-context/issues).
36
43
 
37
44
  ## Why LogicStamp?
38
45
 
@@ -40,10 +47,9 @@ LLMs understand your project instantly - without scanning 10,000+ lines of code
40
47
 
41
48
  - **~65–72% token savings** vs raw source
42
49
  - **Deterministic, structured contracts** that help AI avoid hallucinations by only referencing the true architecture
50
+ - **🔒 Built-in security** - automatic secret detection and sanitization in generated context files
43
51
  - **Perfect for Cursor/Claude/GitHub Copilot Chat** — share context files for instant codebase understanding
44
- - **CI-friendly** detect drift, validate bundles, track changes
45
-
46
- This gives newcomers the "aha moment" in seconds.
52
+ - **CI-friendly** - detect drift, validate bundles, track changes
47
53
 
48
54
  ## Features
49
55
 
@@ -55,6 +61,7 @@ This gives newcomers the "aha moment" in seconds.
55
61
  - 📦 **Per-folder bundles** - organized by your project structure
56
62
  - ⚙️ **CI validation** - (drift detection, schema validation)
57
63
  - 🔢 **Accurate token estimates** - (GPT/Claude)
64
+ - 🔒 **Security-first** - automatic secret detection and sanitization
58
65
  - 💨 **Fast, zero-config** - works out of the box
59
66
  - 🤖 **MCP-ready (coming soon)** - AI agents can consume context bundles via a standardized MCP interface
60
67
 
@@ -97,33 +104,51 @@ After installation, the `stamp` command will be available globally.
97
104
 
98
105
  ## Recent Updates
99
106
 
100
- **v0.2.6**
101
- - Export metadata extraction (default/named exports detection)
102
- - Internal component filtering (improved dependency tracking accuracy)
103
- - Enhanced dependency graph accuracy
104
-
105
- **v0.2.5**
106
- - ShadCN/UI and Radix UI style extraction
107
- - Enhanced debug logging and error handling
108
- - Model name corrections (GPT-4o-mini GPT-4o)
109
- - Documentation consistency improvements
110
-
111
- **v0.2.4**
112
- - Material UI style extraction
113
- - Improved global CLI installation docs
114
- - Refined README and docs structure
115
- - Streamlined README
116
- - Improved token estimation
117
- - UIF Contracts documentation
107
+ **v0.3.0** 🔒 **Security Release**
108
+ - **🛡️ Security scan now runs by default** - `stamp init` automatically scans for secrets to protect sensitive data
109
+ - **🔐 Automatic secret sanitization** - Detected secrets are automatically replaced with `"PRIVATE_DATA"` in generated context files
110
+ - **⚡ Improved default security posture** - Better protection out of the box for new projects
111
+ - Removed `--secure` flag (security scanning is now default; use `--no-secure` to skip)
112
+ - **Important**: Credentials can only be included in bundles when using `--include-code full` mode. Other modes (`none`, `header`, `header+style`) only include metadata, not implementation code.
113
+
114
+ **v0.2.7**
115
+ - Security scanning command (`stamp security scan`) for secret detection
116
+ - Enhanced initialization with `--yes` and `--secure` flags
117
+ - File exclusion with `.stampignore` for context generation
118
+ - Improved CLI documentation with security commands
118
119
 
119
120
  📋 **Full history → [CHANGELOG.md](https://github.com/LogicStamp/logicstamp-context/blob/main/CHANGELOG.md)**
120
121
 
122
+ ## Security
123
+
124
+ **Automatic Secret Protection (v0.3.0+)**
125
+
126
+ LogicStamp Context automatically protects sensitive data in generated context files:
127
+
128
+ - **🔍 Security scanning by default** - `stamp init` automatically scans for secrets (API keys, passwords, tokens)
129
+ - **🛡️ Automatic sanitization** - Detected secrets are replaced with `"PRIVATE_DATA"` in generated context files (source files are never modified)
130
+ - **📋 Smart exclusions** - Files with secrets are automatically excluded from context generation via `.stampignore`
131
+ - **🔐 Safe by default** - Only metadata is included in default modes; credentials only appear in `--include-code full` mode
132
+
133
+ > **⚠️ Seeing `"PRIVATE_DATA"` in your context files?** This means secrets were detected in your codebase during scanning. The security scan examines `.ts`, `.tsx`, `.js`, `.jsx`, and `.json` files for secret patterns. **Action required:**
134
+ > 1. Review `stamp_security_report.json` to see what was found
135
+ > 2. Remove hard-coded secrets from your source code
136
+ > 3. Use environment variables or secret management tools instead
137
+ > 4. Run `stamp ignore <file>` to exclude files with secrets from context generation
138
+ >
139
+ > **Best practice:** Never commit secrets to version control. Use `.env` files (in `.gitignore`) or secret management services.
140
+
141
+ > **Important**: Always review generated context files before sharing. For complete security documentation, see [SECURITY.md](https://github.com/LogicStamp/logicstamp-context/blob/main/SECURITY.md).
142
+
121
143
  ## Usage
122
144
 
123
145
  ```bash
124
146
  stamp --version # Show version number
125
147
  stamp --help # Show help
126
- stamp init [path] [options] # Initialize project preferences
148
+ stamp init [path] [options] # Initialize project preferences (security scan runs by default)
149
+ stamp init --no-secure # Initialize without security scan
150
+ stamp ignore <path> [path2] ... # Add files/folders to .stampignore
151
+ stamp security scan [path] [options] # Scan for secrets (API keys, passwords, tokens)
127
152
  stamp context [path] [options] # Generate context bundles
128
153
  stamp context style [path] [options] # Generate with style metadata
129
154
  stamp context compare [options] # Detect context drift
@@ -136,6 +161,9 @@ stamp context clean [path] [options] # Remove generated files
136
161
  | Command | Description | Docs |
137
162
  |---------|-------------|------|
138
163
  | `stamp init` | Initialize project (`.gitignore`, `LLM_CONTEXT.md`, config) | [init.md](https://github.com/LogicStamp/logicstamp-context/blob/main/docs/cli/init.md) |
164
+ | `stamp ignore` | Add files/folders to `.stampignore` to exclude from context | [ignore.md](https://github.com/LogicStamp/logicstamp-context/blob/main/docs/cli/ignore.md) |
165
+ | `stamp security scan` | Scan for secrets (API keys, passwords, tokens) | [security-scan.md](https://github.com/LogicStamp/logicstamp-context/blob/main/docs/cli/security-scan.md) |
166
+ | `stamp security --hard-reset` | Reset security configuration (delete `.stampignore` and report) | [security-scan.md](https://github.com/LogicStamp/logicstamp-context/blob/main/docs/cli/security-scan.md) |
139
167
  | `stamp context` | Generate AI-ready context bundles organized by folder | [context.md](https://github.com/LogicStamp/logicstamp-context/blob/main/docs/cli/context.md) |
140
168
  | `stamp context style` | Generate context with style metadata (Tailwind, SCSS, etc.) | [style.md](https://github.com/LogicStamp/logicstamp-context/blob/main/docs/cli/style.md) |
141
169
  | `stamp context compare` | Compare context files to detect changes (CI-friendly) | [compare.md](https://github.com/LogicStamp/logicstamp-context/blob/main/docs/cli/compare.md) |
@@ -159,7 +187,10 @@ stamp context clean [path] [options] # Remove generated files
159
187
 
160
188
  ## Documentation
161
189
 
190
+ For full Documentation see: https://logicstamp.dev/docs
191
+
162
192
  - **[Usage Guide](https://github.com/LogicStamp/logicstamp-context/blob/main/docs/usage.md)** — Complete usage documentation with examples
193
+ - **[Example Files](https://github.com/LogicStamp/logicstamp-context/blob/main/examples/README.md)** — Complete example files (context.json, .stampignore, security reports)
163
194
  - **[Token Optimization](https://github.com/LogicStamp/logicstamp-context/blob/main/docs/usage.md#token-cost-comparison)** — Understand token costs and savings
164
195
  - **[Mode Comparison](https://github.com/LogicStamp/logicstamp-context/blob/main/docs/cli/compare-modes.md)** — Detailed comparison across all modes
165
196
  - **[Output Format](https://github.com/LogicStamp/logicstamp-context/blob/main/docs/schema.md)** — Complete schema documentation
@@ -167,6 +198,12 @@ stamp context clean [path] [options] # Remove generated files
167
198
  - **[Troubleshooting](https://github.com/LogicStamp/logicstamp-context/blob/main/docs/usage.md#troubleshooting)** — Common issues and solutions
168
199
  - **[UIF Contracts](https://github.com/LogicStamp/logicstamp-context/blob/main/docs/uif_contracts.md)** — Understanding component contracts
169
200
 
201
+ ## Known Limitations
202
+
203
+ LogicStamp Context is still in beta. A few edge cases are not fully supported yet.
204
+
205
+ See the full list here: [docs/limitations.md](https://github.com/LogicStamp/logicstamp-context/blob/main/docs/limitations.md)
206
+
170
207
  ## Need Help?
171
208
 
172
209
  - **Open an issue** → https://github.com/LogicStamp/logicstamp-context/issues
@@ -199,6 +236,12 @@ All in one command, no pre-compilation needed!
199
236
 
200
237
  MIT
201
238
 
239
+ ## Branding & Attribution
240
+
241
+ The LogicStamp Fox mascot and related brand assets are © 2025 LogicStamp Contributors.
242
+
243
+ These assets may not be used for third-party branding, logos, or commercial identity without permission. They are included in this repository for documentation and non-commercial use within the LogicStamp ecosystem only.
244
+
202
245
  ## Contributing
203
246
 
204
247
  Issues and PRs welcome! This is an open-source project.
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/context.ts"],"names":[],"mappings":"AAAA;;GAEG;AAsBH,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC;IACxC,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,YAAY,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,UAAU,GAAG,UAAU,GAAG,WAAW,CAAC;IAC/C,eAAe,EAAE,OAAO,CAAC;IACzB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC;IACf,aAAa,EAAE,OAAO,CAAC;IACvB,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,wBAAsB,cAAc,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAyW3E"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/context.ts"],"names":[],"mappings":"AAAA;;GAEG;AAwBH,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC;IACxC,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,YAAY,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,UAAU,GAAG,UAAU,GAAG,WAAW,CAAC;IAC/C,eAAe,EAAE,OAAO,CAAC;IACzB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC;IACf,aAAa,EAAE,OAAO,CAAC;IACvB,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,wBAAsB,cAAc,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAqY3E"}
@@ -5,6 +5,7 @@ import { resolve, dirname, join } from 'node:path';
5
5
  import { mkdir, writeFile } from 'node:fs/promises';
6
6
  import { debugError } from '../../utils/debug.js';
7
7
  import { globFiles } from '../../utils/fsx.js';
8
+ import { readStampignore, filterIgnoredFiles } from '../../utils/stampignore.js';
8
9
  import { buildDependencyGraph } from '../../core/manifest.js';
9
10
  import { pack, } from '../../core/pack.js';
10
11
  import { estimateGPT4Tokens, estimateClaudeTokens } from '../../utils/tokens.js';
@@ -15,6 +16,7 @@ import { calculateTokenEstimates, generateModeComparison, displayModeComparison
15
16
  import { calculateStats, generateStatsOutput, generateSummary } from './context/statsCalculator.js';
16
17
  import { writeContextFiles, writeMainIndex, groupBundlesByFolder, displayPath } from './context/fileWriter.js';
17
18
  import { ensureConfigExists, setupGitignore, setupLLMContext } from './context/configManager.js';
19
+ import { getAndResetSanitizeStats } from '../../core/pack/loader.js';
18
20
  export async function contextCommand(options) {
19
21
  const startTime = Date.now();
20
22
  // Determine the target directory
@@ -24,7 +26,16 @@ export async function contextCommand(options) {
24
26
  console.log(`🔍 Scanning ${displayPath(projectRoot)}...`);
25
27
  }
26
28
  // Step 1: Find all React/TS files
27
- const files = await globFiles(projectRoot);
29
+ let files = await globFiles(projectRoot);
30
+ // Step 1.5: Filter files based on .stampignore
31
+ const stampignore = await readStampignore(projectRoot);
32
+ if (stampignore && stampignore.ignore.length > 0) {
33
+ const originalCount = files.length;
34
+ files = filterIgnoredFiles(files, stampignore.ignore, projectRoot);
35
+ if (!options.quiet && files.length < originalCount) {
36
+ console.log(` Excluded ${originalCount - files.length} file(s) via .stampignore`);
37
+ }
38
+ }
28
39
  if (files.length === 0) {
29
40
  console.error(`❌ No React/TypeScript modules found under ${displayPath(projectRoot)}`);
30
41
  console.error(` Try: logicstamp-context ./src or --depth 0 to scan all directories`);
@@ -61,35 +72,41 @@ export async function contextCommand(options) {
61
72
  for (const contract of contracts) {
62
73
  contractsMap.set(contract.entryId, contract);
63
74
  }
64
- // Apply profile settings
75
+ // Apply profile settings (only if user hasn't explicitly set the option)
76
+ // Check if user explicitly set options by looking for flags in argv
77
+ const userSetIncludeCode = process.argv.some((arg, i) => (arg === '--include-code' || arg === '-c') && process.argv[i + 1]);
78
+ const userSetDepth = process.argv.some((arg, i) => (arg === '--depth' || arg === '-d') && process.argv[i + 1]);
65
79
  let depth = options.depth;
66
80
  let includeCode = options.includeCode;
67
81
  let hashLock = options.hashLock;
68
82
  let strict = options.strict;
69
83
  if (options.profile === 'llm-safe') {
70
- depth = 1;
71
- includeCode = 'header';
84
+ depth = userSetDepth ? options.depth : 1;
85
+ includeCode = userSetIncludeCode ? options.includeCode : 'header';
72
86
  hashLock = false;
73
87
  options.maxNodes = 30;
74
88
  options.allowMissing = true;
75
89
  if (!options.quiet) {
76
- console.log('📋 Using profile: llm-safe (depth=1, header only, max 30 nodes)');
90
+ const codeMode = includeCode === 'full' ? 'full code' : includeCode === 'none' ? 'no code' : 'header only';
91
+ console.log(`📋 Using profile: llm-safe (depth=${depth}, ${codeMode}, max 30 nodes)`);
77
92
  }
78
93
  }
79
94
  else if (options.profile === 'llm-chat') {
80
- depth = 1;
81
- includeCode = 'header';
95
+ depth = userSetDepth ? options.depth : 1;
96
+ includeCode = userSetIncludeCode ? options.includeCode : 'header';
82
97
  hashLock = false;
83
98
  if (!options.quiet) {
84
- console.log('📋 Using profile: llm-chat (depth=1, header only, max 100 nodes)');
99
+ const codeMode = includeCode === 'full' ? 'full code' : includeCode === 'none' ? 'no code' : 'header only';
100
+ console.log(`📋 Using profile: llm-chat (depth=${depth}, ${codeMode}, max 100 nodes)`);
85
101
  }
86
102
  }
87
103
  else if (options.profile === 'ci-strict') {
88
- includeCode = 'none';
104
+ includeCode = userSetIncludeCode ? options.includeCode : 'none';
89
105
  hashLock = false;
90
106
  strict = true;
91
107
  if (!options.quiet) {
92
- console.log('📋 Using profile: ci-strict (no code, strict dependencies)');
108
+ const codeMode = includeCode === 'full' ? 'full code' : includeCode === 'header' ? 'header only' : 'no code';
109
+ console.log(`📋 Using profile: ci-strict (${codeMode}, strict dependencies)`);
93
110
  }
94
111
  }
95
112
  // Step 4: Pack context bundles
@@ -304,6 +321,15 @@ export async function contextCommand(options) {
304
321
  },
305
322
  quiet: options.quiet,
306
323
  });
324
+ // Display sanitization summary
325
+ const sanitizeStats = getAndResetSanitizeStats();
326
+ if (sanitizeStats.filesWithSecrets > 0) {
327
+ console.log(`\n⚠️ Secret sanitization: Replaced ${sanitizeStats.totalSecretsReplaced} secret(s) in ${sanitizeStats.filesWithSecrets} file(s)`);
328
+ console.log(` Secrets were replaced with "PRIVATE_DATA" in generated JSON files`);
329
+ }
330
+ else {
331
+ console.log(`\n✅ Generated context verified - no secret patterns detected`);
332
+ }
307
333
  console.log(`\n⏱ Completed in ${elapsed}ms`);
308
334
  }
309
335
  // Exit with non-zero code if --strict-missing is enabled and there are missing dependencies
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/cli/commands/context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/cli/commands/context.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Ignore command - Add files or folders to .stampignore
3
+ */
4
+ export interface IgnoreOptions {
5
+ /** Target directory (default: current directory) */
6
+ targetDir?: string;
7
+ /** Paths to add to .stampignore */
8
+ paths: string[];
9
+ /** Suppress verbose output */
10
+ quiet?: boolean;
11
+ }
12
+ /**
13
+ * Add files or folders to .stampignore
14
+ */
15
+ export declare function ignoreCommand(options: IgnoreOptions): Promise<void>;
16
+ //# sourceMappingURL=ignore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ignore.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/ignore.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,MAAM,WAAW,aAAa;IAC5B,oDAAoD;IACpD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mCAAmC;IACnC,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,8BAA8B;IAC9B,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CA0DzE"}
@@ -0,0 +1,61 @@
1
+ /**
2
+ * Ignore command - Add files or folders to .stampignore
3
+ */
4
+ import { resolve, isAbsolute } from 'node:path';
5
+ import { addToStampignore, readStampignore } from '../../utils/stampignore.js';
6
+ import { normalizeEntryId, getRelativePath } from '../../utils/fsx.js';
7
+ /**
8
+ * Add files or folders to .stampignore
9
+ */
10
+ export async function ignoreCommand(options) {
11
+ const targetDir = resolve(options.targetDir || process.cwd());
12
+ if (options.paths.length === 0) {
13
+ throw new Error('No paths provided. Usage: stamp ignore <path1> [path2] ...');
14
+ }
15
+ // Read current config to determine which paths are new (for better feedback)
16
+ const currentConfig = await readStampignore(targetDir);
17
+ const currentIgnore = currentConfig?.ignore || [];
18
+ const normalizedCurrent = currentIgnore.map(p => normalizeEntryId(p));
19
+ // Convert absolute paths to relative before processing
20
+ const relativePaths = options.paths.map(p => {
21
+ if (isAbsolute(p)) {
22
+ return getRelativePath(targetDir, p);
23
+ }
24
+ return p;
25
+ });
26
+ // Normalize paths to add and filter out duplicates
27
+ const normalizedToAdd = relativePaths
28
+ .map(p => normalizeEntryId(p))
29
+ .filter(p => !normalizedCurrent.includes(p));
30
+ if (normalizedToAdd.length === 0) {
31
+ if (!options.quiet) {
32
+ console.log('ℹ️ All specified paths are already in .stampignore');
33
+ }
34
+ return;
35
+ }
36
+ const { added, created } = await addToStampignore(targetDir, relativePaths);
37
+ if (!added) {
38
+ // This shouldn't happen, but handle it anyway
39
+ if (!options.quiet) {
40
+ console.log('ℹ️ All specified paths are already in .stampignore');
41
+ }
42
+ return;
43
+ }
44
+ if (created) {
45
+ if (!options.quiet) {
46
+ console.log(`✅ Created .stampignore and added ${normalizedToAdd.length} path(s)`);
47
+ }
48
+ }
49
+ else {
50
+ if (!options.quiet) {
51
+ console.log(`✅ Added ${normalizedToAdd.length} path(s) to .stampignore`);
52
+ }
53
+ }
54
+ if (!options.quiet && normalizedToAdd.length > 0) {
55
+ console.log(` Added paths:`);
56
+ normalizedToAdd.forEach(path => {
57
+ console.log(` - ${path}`);
58
+ });
59
+ }
60
+ }
61
+ //# sourceMappingURL=ignore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ignore.js","sourceRoot":"","sources":["../../../src/cli/commands/ignore.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC/E,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAWvE;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,OAAsB;IACxD,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAE9D,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;IAChF,CAAC;IAED,6EAA6E;IAC7E,MAAM,aAAa,GAAG,MAAM,eAAe,CAAC,SAAS,CAAC,CAAC;IACvD,MAAM,aAAa,GAAG,aAAa,EAAE,MAAM,IAAI,EAAE,CAAC;IAClD,MAAM,iBAAiB,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;IAEtE,uDAAuD;IACvD,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;QAC1C,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;YAClB,OAAO,eAAe,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;QACvC,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;IAEH,mDAAmD;IACnD,MAAM,eAAe,GAAG,aAAa;SAClC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;SAC7B,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAE/C,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,qDAAqD,CAAC,CAAC;QACrE,CAAC;QACD,OAAO;IACT,CAAC;IAED,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,gBAAgB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;IAE5E,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,8CAA8C;QAC9C,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,qDAAqD,CAAC,CAAC;QACrE,CAAC;QACD,OAAO;IACT,CAAC;IAED,IAAI,OAAO,EAAE,CAAC;QACZ,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,oCAAoC,eAAe,CAAC,MAAM,UAAU,CAAC,CAAC;QACpF,CAAC;IACH,CAAC;SAAM,CAAC;QACN,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,WAAW,eAAe,CAAC,MAAM,0BAA0B,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC/B,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAC7B,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
@@ -6,6 +6,10 @@ export interface InitOptions {
6
6
  targetDir?: string;
7
7
  /** Skip gitignore setup */
8
8
  skipGitignore?: boolean;
9
+ /** Skip all prompts (non-interactive mode) */
10
+ yes?: boolean;
11
+ /** Disable security scan (security scan runs by default) */
12
+ noSecure?: boolean;
9
13
  }
10
14
  /**
11
15
  * Initialize LogicStamp in a project directory
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,MAAM,WAAW,WAAW;IAC1B,kEAAkE;IAClE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2BAA2B;IAC3B,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AA2BD;;GAEG;AACH,wBAAsB,IAAI,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgInE"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAAA;;GAEG;AAQH,MAAM,WAAW,WAAW;IAC1B,kEAAkE;IAClE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2BAA2B;IAC3B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,8CAA8C;IAC9C,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AA2BD;;GAEG;AACH,wBAAsB,IAAI,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CA6MnE"}