@korl3one/ccode 2.2.0 → 2.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.
- package/README.md +97 -92
- package/dist/cli/index.js +6 -1
- package/package.json +3 -2
package/README.md
CHANGED
|
@@ -1,32 +1,34 @@
|
|
|
1
|
-
|
|
2
|
-
██████╗ ██████╗ ██████╗ ██████╗ ███████╗
|
|
3
|
-
██╔════╝██╔════╝ ██╔═══██╗██╔══██╗██╔════╝
|
|
4
|
-
██║ ██║ ██║ ██║██║ ██║█████╗
|
|
5
|
-
██║ ██║ ██║ ██║██║ ██║██╔══╝
|
|
6
|
-
╚██████╗╚██████╗ ╚██████╔╝██████╔╝███████╗
|
|
7
|
-
╚═════╝ ╚═════╝ ╚═════╝ ╚═════╝ ╚══════╝
|
|
8
|
-
```
|
|
1
|
+
<div align="center">
|
|
9
2
|
|
|
10
|
-
|
|
3
|
+
<img src="assets/logo.png" alt="CCODE" width="600"/>
|
|
4
|
+
|
|
5
|
+
<br/>
|
|
6
|
+
<br/>
|
|
11
7
|
|
|
12
8
|
**Persistent context CLI for AI-assisted development.**
|
|
13
9
|
|
|
14
10
|
Stop re-explaining your project to AI every time the session resets.
|
|
15
11
|
|
|
12
|
+
<br/>
|
|
13
|
+
|
|
16
14
|
```bash
|
|
17
15
|
npm install -g @korl3one/ccode
|
|
18
|
-
ccode init
|
|
19
16
|
```
|
|
20
17
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
[](https://www.npmjs.com/package/@korl3one/ccode)
|
|
21
|
+
[](LICENSE)
|
|
22
|
+
[](https://nodejs.org)
|
|
23
|
+
[](https://github.com/iDevelop25/ccode)
|
|
24
|
+
|
|
25
|
+
</div>
|
|
24
26
|
|
|
25
27
|
---
|
|
26
28
|
|
|
27
29
|
## The problem
|
|
28
30
|
|
|
29
|
-
Every time you switch sessions, models, or tools when working with AI, you lose your project context
|
|
31
|
+
Every time you switch sessions, models, or tools when working with AI, **you lose your project context**. You end up re-explaining the architecture, previous decisions, and current state over and over again.
|
|
30
32
|
|
|
31
33
|
## The solution
|
|
32
34
|
|
|
@@ -38,45 +40,34 @@ Any developer or AI can read `.ccode/` and understand the project instantly.
|
|
|
38
40
|
|
|
39
41
|
## Demo
|
|
40
42
|
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
CCODE sigue observando tu proyecto...
|
|
64
|
-
|
|
65
|
-
████████████░░░░░░░░ 60% (3/5)
|
|
66
|
-
> Tarea activa: TASK-002 — Crear formulario de login
|
|
67
|
-
|
|
68
|
-
? Que hacemos?
|
|
69
|
-
> Verificar progreso (se detectaron cambios)
|
|
70
|
-
Marcar tarea como completada
|
|
71
|
-
Iniciar siguiente tarea
|
|
72
|
-
Ver estado completo
|
|
73
|
-
Salir
|
|
74
|
-
```
|
|
43
|
+
### `ccode init` — Generate full project context
|
|
44
|
+
|
|
45
|
+
<div align="center">
|
|
46
|
+
<img src="assets/demo-init.svg" alt="ccode init demo" width="700"/>
|
|
47
|
+
</div>
|
|
48
|
+
|
|
49
|
+
<br/>
|
|
50
|
+
|
|
51
|
+
### Persistent session — CCODE watches while you code
|
|
52
|
+
|
|
53
|
+
<div align="center">
|
|
54
|
+
<img src="assets/demo-session.svg" alt="ccode session demo" width="700"/>
|
|
55
|
+
</div>
|
|
56
|
+
|
|
57
|
+
<br/>
|
|
58
|
+
|
|
59
|
+
### `ccode doctor` — Project health check
|
|
60
|
+
|
|
61
|
+
<div align="center">
|
|
62
|
+
<img src="assets/demo-doctor.svg" alt="ccode doctor demo" width="700"/>
|
|
63
|
+
</div>
|
|
75
64
|
|
|
76
65
|
---
|
|
77
66
|
|
|
78
67
|
## Why CCODE?
|
|
79
68
|
|
|
69
|
+
<div align="center">
|
|
70
|
+
|
|
80
71
|
| | CCODE | Manual prompts |
|
|
81
72
|
|---|:---:|:---:|
|
|
82
73
|
| Persistent project context | ✅ | ❌ |
|
|
@@ -88,6 +79,8 @@ $ ccode init
|
|
|
88
79
|
| Works with 6 AI providers | ✅ | ❌ |
|
|
89
80
|
| Context lives in the repo (Git) | ✅ | ❌ |
|
|
90
81
|
|
|
82
|
+
</div>
|
|
83
|
+
|
|
91
84
|
---
|
|
92
85
|
|
|
93
86
|
## How it works
|
|
@@ -99,15 +92,19 @@ cd my-project
|
|
|
99
92
|
ccode init
|
|
100
93
|
```
|
|
101
94
|
|
|
102
|
-
A step-by-step wizard asks about your project and an AI generates the full context. CCODE adapts automatically
|
|
95
|
+
A step-by-step wizard asks about your project and an AI generates the full context. CCODE **adapts automatically**:
|
|
96
|
+
|
|
97
|
+
| Project type | Context depth | Tasks |
|
|
98
|
+
|---|---|---|
|
|
99
|
+
| Simple (prototype, few features) | Lightweight docs | 3-5 |
|
|
100
|
+
| Medium (standard app) | Moderate architecture | 5-8 |
|
|
101
|
+
| Complex (multiple modules) | Detailed patterns + diagrams | 8-12 |
|
|
103
102
|
|
|
104
|
-
|
|
105
|
-
- **Medium project** (standard app) → moderate context, 5-8 tasks
|
|
106
|
-
- **Complex project** (multiple modules, integrations) → detailed architecture, 8-12 tasks
|
|
103
|
+
A simple login doesn't need microservice diagrams. CCODE is smart about it.
|
|
107
104
|
|
|
108
105
|
### 2. Persistent session
|
|
109
106
|
|
|
110
|
-
After init, CCODE stays active — watching your project in real time:
|
|
107
|
+
After init, CCODE **stays active** — watching your project in real time:
|
|
111
108
|
|
|
112
109
|
- Detects file changes automatically
|
|
113
110
|
- Suggests verifying tasks when it sees progress
|
|
@@ -130,13 +127,15 @@ CCODE compares **acceptance criteria** against **actual project files**:
|
|
|
130
127
|
○ TASK-003: Implement JWT auth — PENDING
|
|
131
128
|
```
|
|
132
129
|
|
|
130
|
+
It doesn't guess — it verifies.
|
|
131
|
+
|
|
133
132
|
### 4. Context export
|
|
134
133
|
|
|
135
134
|
```bash
|
|
136
135
|
ccode export
|
|
137
136
|
```
|
|
138
137
|
|
|
139
|
-
Generates a single `.md` file with your full project context — ready to paste into any AI chat (ChatGPT, Claude, Gemini
|
|
138
|
+
Generates a single `.md` file with your full project context — ready to paste into **any AI chat** (ChatGPT, Claude, Gemini) without connecting an API.
|
|
140
139
|
|
|
141
140
|
### 5. Project health check
|
|
142
141
|
|
|
@@ -144,27 +143,25 @@ Generates a single `.md` file with your full project context — ready to paste
|
|
|
144
143
|
ccode doctor
|
|
145
144
|
```
|
|
146
145
|
|
|
147
|
-
|
|
148
|
-
✓ Contexto generado
|
|
149
|
-
✓ Proveedor de IA configurado
|
|
150
|
-
⚠ 2 tareas sin completar
|
|
151
|
-
⚠ architecture.md no refleja 3 archivos nuevos
|
|
152
|
-
✓ Conexion con IA activa
|
|
153
|
-
```
|
|
146
|
+
Like a linter, but for your project context. Checks files, AI connection, task status, and tells you what needs attention.
|
|
154
147
|
|
|
155
148
|
---
|
|
156
149
|
|
|
157
150
|
## Supported AI Providers
|
|
158
151
|
|
|
152
|
+
<div align="center">
|
|
153
|
+
|
|
159
154
|
| Provider | Models | Note |
|
|
160
155
|
|----------|--------|------|
|
|
161
156
|
| **Claude** (Anthropic) | Sonnet 4, Haiku 3.5, Opus 4 | Recommended |
|
|
162
157
|
| **OpenAI** (ChatGPT) | GPT-4o, GPT-4o mini, GPT-4.1, o3-mini | Most popular |
|
|
163
158
|
| **Google Gemini** | 2.5 Flash, 2.5 Pro, 2.0 Flash | Free tier available |
|
|
164
159
|
| **DeepSeek** | Chat, Reasoner | Budget-friendly |
|
|
165
|
-
| **Groq** | Llama 3.3 70B, Llama 3.1 8B, Mixtral
|
|
160
|
+
| **Groq** | Llama 3.3 70B, Llama 3.1 8B, Mixtral | Ultra-fast, free tier |
|
|
166
161
|
| **Ollama** | Any local model | Offline, no API key |
|
|
167
162
|
|
|
163
|
+
</div>
|
|
164
|
+
|
|
168
165
|
---
|
|
169
166
|
|
|
170
167
|
## Available commands
|
|
@@ -172,12 +169,13 @@ ccode doctor
|
|
|
172
169
|
| Command | What it does |
|
|
173
170
|
|---------|-------------|
|
|
174
171
|
| `ccode init` | Interactive wizard — generates full project context |
|
|
175
|
-
| `ccode update` | Re-analyze project and refresh context |
|
|
176
|
-
| `ccode export` | Export context as a single `.md`
|
|
172
|
+
| `ccode update` | Re-analyze project and refresh context with AI |
|
|
173
|
+
| `ccode export` | Export context as a single `.md` for any AI chat |
|
|
177
174
|
| `ccode explain` | Quick project summary for onboarding |
|
|
178
175
|
| `ccode doctor` | Health check — what's good, what's missing |
|
|
179
|
-
| `ccode connect` | Configure AI provider |
|
|
176
|
+
| `ccode connect` | Configure AI provider and model |
|
|
180
177
|
| `ccode status` | Dashboard with progress bar and stats |
|
|
178
|
+
| `ccode verify` | AI-powered task verification |
|
|
181
179
|
|
|
182
180
|
---
|
|
183
181
|
|
|
@@ -185,15 +183,17 @@ ccode doctor
|
|
|
185
183
|
|
|
186
184
|
Everything lives in `.ccode/` inside your repository:
|
|
187
185
|
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
186
|
+
```
|
|
187
|
+
.ccode/
|
|
188
|
+
├── project.md Vision, objectives, scope
|
|
189
|
+
├── architecture.md System structure (adapted to complexity)
|
|
190
|
+
├── rules.md Development standards for your stack
|
|
191
|
+
├── tasks.json Task checklist with acceptance criteria
|
|
192
|
+
├── state.json Active task, workflow stage
|
|
193
|
+
├── context.json Project configuration
|
|
194
|
+
├── memory.md Decision history
|
|
195
|
+
└── config.json AI provider config
|
|
196
|
+
```
|
|
197
197
|
|
|
198
198
|
---
|
|
199
199
|
|
|
@@ -201,46 +201,51 @@ Everything lives in `.ccode/` inside your repository:
|
|
|
201
201
|
|
|
202
202
|
```
|
|
203
203
|
src/
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
204
|
+
├── cli/ Session, branding, file watcher
|
|
205
|
+
├── core/ Context engine, tasks, prompt builder
|
|
206
|
+
├── ai/ 6 provider adapters (Adapter pattern)
|
|
207
|
+
└── utils/ File system abstraction
|
|
208
208
|
```
|
|
209
209
|
|
|
210
|
-
|
|
210
|
+
**Patterns:** Adapter (AI providers) · Observer (file watcher) · State Machine (workflow) · Builder (prompts)
|
|
211
211
|
|
|
212
212
|
---
|
|
213
213
|
|
|
214
214
|
## Contributing
|
|
215
215
|
|
|
216
|
-
See [CONTRIBUTING.md](CONTRIBUTING.md) for setup instructions
|
|
216
|
+
See [CONTRIBUTING.md](CONTRIBUTING.md) for setup instructions.
|
|
217
217
|
|
|
218
|
-
Adding a new AI provider? Just implement `IAIProvider`, add it to the manager switch, done.
|
|
218
|
+
Adding a new AI provider? Just implement `IAIProvider`, add it to the manager switch, done. Zero changes to the rest of the system.
|
|
219
219
|
|
|
220
220
|
---
|
|
221
221
|
|
|
222
222
|
## Learn more
|
|
223
223
|
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
224
|
+
| Resource | Link |
|
|
225
|
+
|----------|------|
|
|
226
|
+
| Learning guide (6 modules, QP2C) | [docs/learning/](docs/learning/README.md) |
|
|
227
|
+
| Engineering roles | [AGENTS.md](AGENTS.md) |
|
|
228
|
+
| Technical competencies | [SKILLS.md](SKILLS.md) |
|
|
229
|
+
| YouTube tutorials | [@CreativeCode25](https://www.youtube.com/@CreativeCode25) |
|
|
228
230
|
|
|
229
231
|
---
|
|
230
232
|
|
|
231
|
-
|
|
233
|
+
<div align="center">
|
|
234
|
+
|
|
235
|
+
### If CCODE helps you, consider giving it a star ⭐
|
|
232
236
|
|
|
233
|
-
If CCODE helps you, consider giving it a **star on GitHub** ⭐
|
|
234
237
|
It helps the project grow and reach more developers.
|
|
235
238
|
|
|
236
|
-
|
|
239
|
+
<br/>
|
|
237
240
|
|
|
238
|
-
|
|
241
|
+
[](https://github.com/iDevelop25/ccode)
|
|
239
242
|
|
|
240
|
-
|
|
243
|
+
<br/>
|
|
241
244
|
|
|
242
|
-
|
|
245
|
+
**[npm](https://www.npmjs.com/package/@korl3one/ccode)** · **[GitHub](https://github.com/iDevelop25/ccode)** · **[YouTube](https://www.youtube.com/@CreativeCode25)**
|
|
243
246
|
|
|
244
|
-
|
|
247
|
+
<br/>
|
|
245
248
|
|
|
246
249
|
*CCODE doesn't tell you how to code — it tells you what to build and makes sure you don't lose track.*
|
|
250
|
+
|
|
251
|
+
</div>
|
package/dist/cli/index.js
CHANGED
|
@@ -4,6 +4,7 @@ import inquirer from 'inquirer';
|
|
|
4
4
|
import ora from 'ora';
|
|
5
5
|
import * as path from 'path';
|
|
6
6
|
import * as fs from 'fs';
|
|
7
|
+
import updateNotifier from 'update-notifier';
|
|
7
8
|
import { showLogo, showWelcome, showHeader, showStep, showSuccess, showError, showWarning, showInfo, showFileTree, showProgressBar, c, } from './brand.js';
|
|
8
9
|
import { FileUtils } from '../utils/files.js';
|
|
9
10
|
import { ContextEngine } from '../core/context.js';
|
|
@@ -935,11 +936,15 @@ async function handleDoctor() {
|
|
|
935
936
|
}
|
|
936
937
|
// ─── CLI Setup ──────────────────────────────────────────────────────
|
|
937
938
|
async function main() {
|
|
939
|
+
// Notificar si hay una version nueva disponible
|
|
940
|
+
const pkg = JSON.parse(fs.readFileSync(new URL('../../package.json', import.meta.url), 'utf-8'));
|
|
941
|
+
const notifier = updateNotifier({ pkg, updateCheckInterval: 1000 * 60 * 60 * 4 }); // cada 4 horas
|
|
942
|
+
notifier.notify({ isGlobal: true });
|
|
938
943
|
const program = new Command();
|
|
939
944
|
program
|
|
940
945
|
.name('ccode')
|
|
941
946
|
.description('CCODE: Contexto Persistente para Desarrollo con IA')
|
|
942
|
-
.version(
|
|
947
|
+
.version(pkg.version);
|
|
943
948
|
// Comandos individuales (para uso rápido sin sesión)
|
|
944
949
|
program.command('init').description('Inicializa el contexto del proyecto').action(async () => {
|
|
945
950
|
await handleInit();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@korl3one/ccode",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.3.0",
|
|
4
4
|
"description": "CLI de contexto persistente para desarrollo asistido por IA. Genera documentacion, arquitectura, reglas y tareas verificables.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/cli/index.js",
|
|
@@ -57,7 +57,8 @@
|
|
|
57
57
|
"commander": "^14.0.3",
|
|
58
58
|
"fs-extra": "^11.3.4",
|
|
59
59
|
"inquirer": "^13.3.0",
|
|
60
|
-
"ora": "^8.2.0"
|
|
60
|
+
"ora": "^8.2.0",
|
|
61
|
+
"update-notifier": "^7.3.1"
|
|
61
62
|
},
|
|
62
63
|
"devDependencies": {
|
|
63
64
|
"@types/fs-extra": "^11.0.4",
|