codeforge-dev 1.11.0 → 1.12.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 (56) hide show
  1. package/.devcontainer/.env +7 -1
  2. package/.devcontainer/.gitignore +1 -0
  3. package/.devcontainer/CHANGELOG.md +69 -0
  4. package/.devcontainer/CLAUDE.md +73 -3
  5. package/.devcontainer/README.md +33 -7
  6. package/.devcontainer/config/defaults/main-system-prompt.md +28 -0
  7. package/.devcontainer/config/defaults/writing-system-prompt.md +46 -4
  8. package/.devcontainer/connect-external-terminal.ps1 +1 -1
  9. package/.devcontainer/devcontainer.json +32 -9
  10. package/.devcontainer/docs/configuration-reference.md +3 -0
  11. package/.devcontainer/docs/plugins.md +9 -2
  12. package/.devcontainer/docs/troubleshooting.md +2 -2
  13. package/.devcontainer/features/README.md +8 -9
  14. package/.devcontainer/features/agent-browser/devcontainer-feature.json +21 -21
  15. package/.devcontainer/features/agent-browser/install.sh +0 -7
  16. package/.devcontainer/features/ast-grep/devcontainer-feature.json +22 -22
  17. package/.devcontainer/features/biome/devcontainer-feature.json +12 -14
  18. package/.devcontainer/features/ccms/install.sh +30 -13
  19. package/.devcontainer/features/lsp-servers/devcontainer-feature.json +43 -43
  20. package/.devcontainer/features/mcp-qdrant/poststart-hook.sh +2 -1
  21. package/.devcontainer/features/ruff/devcontainer-feature.json +17 -19
  22. package/.devcontainer/features/tmux/install.sh +2 -2
  23. package/.devcontainer/plugins/devs-marketplace/plugins/auto-formatter/README.md +81 -0
  24. package/.devcontainer/plugins/devs-marketplace/plugins/auto-linter/README.md +92 -0
  25. package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/README.md +250 -0
  26. package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/agents/claude-guide.md +1 -1
  27. package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/agents/debug-logs.md +1 -1
  28. package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/agents/dependency-analyst.md +1 -1
  29. package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/agents/explorer.md +1 -1
  30. package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/agents/generalist.md +1 -1
  31. package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/agents/git-archaeologist.md +2 -2
  32. package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/agents/researcher.md +1 -1
  33. package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/agents/security-auditor.md +1 -1
  34. package/.devcontainer/plugins/devs-marketplace/plugins/codeforge-lsp/README.md +41 -0
  35. package/.devcontainer/plugins/devs-marketplace/plugins/dangerous-command-blocker/README.md +72 -0
  36. package/.devcontainer/plugins/devs-marketplace/plugins/dangerous-command-blocker/scripts/block-dangerous.py +73 -47
  37. package/.devcontainer/plugins/devs-marketplace/plugins/notify-hook/README.md +42 -0
  38. package/.devcontainer/plugins/devs-marketplace/plugins/protected-files-guard/README.md +86 -0
  39. package/.devcontainer/plugins/devs-marketplace/plugins/protected-files-guard/hooks/hooks.json +25 -15
  40. package/.devcontainer/plugins/devs-marketplace/plugins/protected-files-guard/scripts/guard-protected-bash.py +122 -0
  41. package/.devcontainer/plugins/devs-marketplace/plugins/protected-files-guard/scripts/guard-protected.py +3 -3
  42. package/.devcontainer/plugins/devs-marketplace/plugins/ticket-workflow/README.md +96 -0
  43. package/.devcontainer/plugins/devs-marketplace/plugins/workspace-scope-guard/README.md +94 -0
  44. package/.devcontainer/plugins/devs-marketplace/plugins/workspace-scope-guard/scripts/guard-workspace-scope.py +1 -1
  45. package/.devcontainer/scripts/check-setup.sh +1 -1
  46. package/.devcontainer/scripts/setup-projects.sh +23 -16
  47. package/.devcontainer/scripts/setup.sh +48 -5
  48. package/README.md +17 -8
  49. package/package.json +1 -2
  50. package/.devcontainer/features/mcp-reasoner/README.md +0 -177
  51. package/.devcontainer/features/mcp-reasoner/devcontainer-feature.json +0 -25
  52. package/.devcontainer/features/mcp-reasoner/install.sh +0 -184
  53. package/.devcontainer/features/mcp-reasoner/poststart-hook.sh +0 -67
  54. package/.devcontainer/features/splitrail/README.md +0 -140
  55. package/.devcontainer/features/splitrail/devcontainer-feature.json +0 -39
  56. package/.devcontainer/features/splitrail/install.sh +0 -136
@@ -1,39 +0,0 @@
1
- {
2
- "id": "splitrail",
3
- "version": "1.0.1",
4
- "name": "Splitrail Token Usage Tracker",
5
- "description": "Installs Splitrail - real-time AI token usage tracker and cost monitor",
6
- "maintainer": "AnExiledDev",
7
- "documentationURL": "https://github.com/Piebald-AI/splitrail",
8
- "options": {
9
- "version": {
10
- "type": "string",
11
- "description": "Version to install (or 'none' to skip installation)",
12
- "default": "latest"
13
- },
14
- "repoUrl": {
15
- "type": "string",
16
- "description": "Git repository URL for splitrail",
17
- "default": "https://github.com/Piebald-AI/splitrail.git"
18
- },
19
- "branch": {
20
- "type": "string",
21
- "description": "Git branch to checkout",
22
- "default": "main"
23
- },
24
- "username": {
25
- "type": "string",
26
- "description": "Container user to install for",
27
- "default": "automatic"
28
- }
29
- },
30
- "installsAfter": [
31
- "ghcr.io/devcontainers/features/rust:1",
32
- "ghcr.io/devcontainers/features/common-utils:2"
33
- ],
34
- "customizations": {
35
- "vscode": {
36
- "extensions": []
37
- }
38
- }
39
- }
@@ -1,136 +0,0 @@
1
- #!/bin/bash
2
- set -euo pipefail
3
-
4
- # Cleanup on exit
5
- cleanup() {
6
- rm -f /tmp/splitrail-* 2>/dev/null || true
7
- }
8
- trap cleanup EXIT
9
-
10
- # Import options
11
- # NOTE: DevContainer converts camelCase to UPPERCASE without underscores
12
- VERSION="${VERSION:-latest}"
13
- REPO_URL="${REPOURL:-https://github.com/Piebald-AI/splitrail.git}"
14
- BRANCH="${BRANCH:-main}"
15
- USERNAME="${USERNAME:-automatic}"
16
-
17
- # Skip installation if version is "none"
18
- if [ "${VERSION}" = "none" ]; then
19
- echo "[splitrail] Skipping installation (version=none)"
20
- exit 0
21
- fi
22
-
23
- echo "[splitrail] Starting Splitrail installation..."
24
-
25
- # Validate git is available
26
- if ! command -v git &>/dev/null; then
27
- echo "[splitrail] ERROR: git is not available"
28
- exit 1
29
- fi
30
-
31
- # Validate cargo is available
32
- if ! command -v cargo &>/dev/null; then
33
- echo "[splitrail] ERROR: cargo is not available. Please ensure Rust feature is installed first."
34
- echo " Expected cargo at: /usr/local/cargo/bin/cargo"
35
- exit 1
36
- fi
37
-
38
- # Validate input parameters
39
- if [ -n "${REPO_URL}" ]; then
40
- if [[ ! "${REPO_URL}" =~ ^https?:// ]] && [[ ! "${REPO_URL}" =~ ^git@.+:.+\.git$ ]]; then
41
- echo "[splitrail] ERROR: repoUrl must be a valid git URL"
42
- echo " Provided: ${REPO_URL}"
43
- echo " Expected: https://... or git@github.com:.../*.git"
44
- exit 1
45
- fi
46
- fi
47
-
48
- # Determine the user
49
- if [ "${USERNAME}" = "auto" ] || [ "${USERNAME}" = "automatic" ]; then
50
- USERNAME=""
51
- for CURRENT_USER in vscode node codespace; do
52
- if id -u "${CURRENT_USER}" >/dev/null 2>&1; then
53
- USERNAME=${CURRENT_USER}
54
- break
55
- fi
56
- done
57
- [ -z "${USERNAME}" ] && USERNAME=root
58
- elif [ "${USERNAME}" = "none" ] || ! id -u "${USERNAME}" >/dev/null 2>&1; then
59
- USERNAME=root
60
- fi
61
-
62
- echo "[splitrail] Installing for user: ${USERNAME}"
63
-
64
- INSTALL_DIR="/home/${USERNAME}/splitrail"
65
- BINARY="/home/${USERNAME}/.cargo/bin/splitrail"
66
-
67
- if [[ -f "$BINARY" ]]; then
68
- echo "[splitrail] Splitrail already installed at $BINARY. Skipping..."
69
- else
70
- echo "[splitrail] Installing Splitrail (Rust compilation - may take 2-3 minutes)..."
71
-
72
- # Use explicit cargo path and rustup home (global installation from devcontainer Rust feature)
73
- export PATH="/usr/local/cargo/bin:$PATH"
74
- export RUSTUP_HOME="/usr/local/rustup"
75
-
76
- # Fix permissions on rustup directories for non-root user access during build
77
- mkdir -p /usr/local/rustup/tmp
78
- chmod -R 777 /usr/local/rustup 2>/dev/null || true
79
-
80
- # Clone and build as detected user
81
- sudo -u "${USERNAME}" bash -c "
82
- # Use explicit cargo path and rustup home for user context
83
- export PATH=\"/usr/local/cargo/bin:\$PATH\"
84
- export RUSTUP_HOME=\"/usr/local/rustup\"
85
-
86
- cd /home/${USERNAME}
87
- rm -rf splitrail
88
-
89
- echo \"[splitrail] → Cloning splitrail repository...\"
90
- git clone -b \"${BRANCH}\" \"${REPO_URL}\" splitrail
91
- cd splitrail
92
-
93
- echo \"[splitrail] → Compiling splitrail (this will take a few minutes)...\"
94
- cargo build --release
95
-
96
- echo \"[splitrail] → Installing binary...\"
97
- cargo install --path .
98
- "
99
-
100
- # Verify installation
101
- if [[ ! -f "$BINARY" ]]; then
102
- echo "[splitrail] ERROR: Splitrail compilation failed - binary not found"
103
- echo " Expected location: $BINARY"
104
- echo " Check build output above for errors"
105
- exit 1
106
- fi
107
-
108
- echo "[splitrail] ✓ Splitrail installed successfully at $BINARY"
109
- fi
110
-
111
- echo ""
112
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
113
- echo " Splitrail Installation Complete"
114
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
115
- echo ""
116
- echo "Configuration:"
117
- echo " • Install Path: ${INSTALL_DIR}"
118
- echo " • Binary: ${BINARY}"
119
- echo " • Repository: ${REPO_URL}"
120
- echo " • Branch: ${BRANCH}"
121
- echo " • User: ${USERNAME}"
122
- echo ""
123
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
124
- echo " Next Steps"
125
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
126
- echo ""
127
- echo "1. Test the binary:"
128
- echo " splitrail --version"
129
- echo ""
130
- echo "2. Start monitoring:"
131
- echo " splitrail"
132
- echo ""
133
- echo "3. View help:"
134
- echo " splitrail --help"
135
- echo ""
136
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"