Commit 2c7b82d
authored
Create .codeforge/ user customization directory (#33)
* Create .codeforge/ user customization directory
Centralizes all user-facing config files into .codeforge/, separating
user customization from .devcontainer/ framework internals. Adds
checksum-based modification detection so updates preserve user changes.
- Move config files from .devcontainer/config/defaults/ to .codeforge/config/
- Move file-manifest.json to .codeforge/
- Move terminal scripts to .codeforge/scripts/
- Add checksum-based sync (SHA-256) for --force and --reset
- Add auto-migration script for existing installations
- Add codeforge config apply CLI subcommand
- Add codeforge alias to setup-aliases.sh
- Update setup.sh with CODEFORGE_DIR env var and deprecation guard
- Update setup-config.sh to read from .codeforge/
- Bump version to 2.0.0
- Update all documentation and docs site references
* Fix review issues: corrupted checksums, var ordering, stale links
Review fixes from 4-agent code review:
- setup.js: Handle corrupted checksums JSON gracefully (try/catch)
- setup.js: Generate checksums from source, not destination on fresh install
- setup.js: Use regex with /g flag in expandVars for multiple occurrences
- setup.sh: Fix variable ordering — set CODEFORGE_DIR before CONFIG_SOURCE_DIR
- setup.sh: Unset CONFIG_SOURCE_DIR after deprecation guard fires
- .gitignore: Remove duplicate .devcontainer/ un-ignore and stale config paths
- architecture.md: Add missing orchestrator-system-prompt.md and migration step
- README.md: Fix dead links to removed docs/ directory, point to docs site
* Fix semver sort in readChecksums and validate overwrite field
- readChecksums: Sort version filenames by numeric semver components
instead of lexicographic order (1.10.0 now correctly sorts after 1.9.0)
- configApply: Validate overwrite field against known values (always,
if-changed, never) and warn on unrecognized values
* Remove dead .codeforge-preserve file
The checksum system in syncCodeforgeDirectory automatically preserves
user-modified files. This file was never read by any code — removing
to avoid implying functionality that doesn't exist.
* Fix CodeRabbit review issues: path traversal, URLs, docs, setup.sh
- Add path traversal validation in configApply() for source and
destination paths in file-manifest.json
- Use default-assignment for CODEFORGE_DIR in deprecation guard
- Replace old GitHub Pages URLs with custom domain
(codeforge.core-directive.com)
- Add .checksums/ and .markers/ to architecture docs tree
- Clarify "How to Reset" section in troubleshooting docs
- Fix "merged" → "migrated content from" in changelog wording
* Fix biome formatting in setup.js path traversal validation
---------
Co-authored-by: AnExiledDev <AnExiledDev@users.noreply.github.com>1 parent 49ff9c7 commit 2c7b82d
File tree
42 files changed
+1027
-250
lines changed- .codeforge
- config
- rules
- scripts
- .devcontainer
- features
- ccstatusline
- tmux
- plugins/devs-marketplace/plugins/agent-system/agents
- scripts
- docs
- src/content/docs
- customization
- getting-started
- reference
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
42 files changed
+1027
-250
lines changedFile renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Lines changed: 10 additions & 10 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
| 3 | + | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
9 | | - | |
| 9 | + | |
10 | 10 | | |
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
14 | 14 | | |
15 | | - | |
| 15 | + | |
16 | 16 | | |
17 | 17 | | |
18 | 18 | | |
19 | 19 | | |
20 | 20 | | |
21 | | - | |
| 21 | + | |
22 | 22 | | |
23 | 23 | | |
24 | 24 | | |
25 | 25 | | |
26 | 26 | | |
27 | | - | |
| 27 | + | |
28 | 28 | | |
29 | 29 | | |
30 | 30 | | |
31 | 31 | | |
32 | 32 | | |
33 | | - | |
| 33 | + | |
34 | 34 | | |
35 | 35 | | |
36 | 36 | | |
37 | 37 | | |
38 | 38 | | |
39 | | - | |
| 39 | + | |
40 | 40 | | |
41 | 41 | | |
42 | 42 | | |
43 | 43 | | |
44 | 44 | | |
45 | | - | |
| 45 | + | |
46 | 46 | | |
47 | 47 | | |
48 | 48 | | |
49 | 49 | | |
50 | 50 | | |
51 | | - | |
| 51 | + | |
52 | 52 | | |
53 | 53 | | |
54 | 54 | | |
55 | 55 | | |
56 | 56 | | |
57 | 57 | | |
58 | | - | |
| 58 | + | |
59 | 59 | | |
60 | 60 | | |
61 | 61 | | |
| |||
0 commit comments