@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 CHANGED
@@ -1,32 +1,34 @@
1
- ```
2
- ██████╗ ██████╗ ██████╗ ██████╗ ███████╗
3
- ██╔════╝██╔════╝ ██╔═══██╗██╔══██╗██╔════╝
4
- ██║ ██║ ██║ ██║██║ ██║█████╗
5
- ██║ ██║ ██║ ██║██║ ██║██╔══╝
6
- ╚██████╗╚██████╗ ╚██████╔╝██████╔╝███████╗
7
- ╚═════╝ ╚═════╝ ╚═════╝ ╚═════╝ ╚══════╝
8
- ```
1
+ <div align="center">
9
2
 
10
- # CCODE
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
- [![npm version](https://img.shields.io/npm/v/@korl3one/ccode)](https://www.npmjs.com/package/@korl3one/ccode)
22
- [![license](https://img.shields.io/npm/l/@korl3one/ccode)](LICENSE)
23
- [![Node.js](https://img.shields.io/badge/node-%3E%3D18-brightgreen)](https://nodejs.org)
18
+ <br/>
19
+
20
+ [![npm version](https://img.shields.io/npm/v/@korl3one/ccode?color=00B4D8&style=for-the-badge)](https://www.npmjs.com/package/@korl3one/ccode)
21
+ [![license](https://img.shields.io/npm/l/@korl3one/ccode?color=0077B6&style=for-the-badge)](LICENSE)
22
+ [![Node.js](https://img.shields.io/badge/node-%3E%3D18-2DC653?style=for-the-badge)](https://nodejs.org)
23
+ [![GitHub stars](https://img.shields.io/github/stars/iDevelop25/ccode?style=for-the-badge&color=FFB703)](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. You end up re-explaining the architecture, previous decisions, and current state over and over again.
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
- $ ccode init
43
-
44
- ██████╗ ██████╗ ██████╗ ██████╗ ███████╗
45
- ██╔════╝██╔════╝ ██╔═══██╗██╔══██╗██╔════╝
46
- ██║ ██║ ██║ ██║██║ ██║█████╗
47
- ╚██████╗╚██████╗ ╚██████╔╝██████╔╝███████╗
48
- ╚═════╝ ╚═════╝ ╚═════╝ ╚═════╝ ╚══════╝
49
-
50
- ●●●● Paso 4/4
51
-
52
- Contexto generado exitosamente
53
-
54
- .ccode/
55
- ├── project.md Documentacion del proyecto
56
- ├── architecture.md Arquitectura del sistema
57
- ├── rules.md Estandares de desarrollo
58
- ├── tasks.json Checklist de tareas (8 tareas)
59
- ├── context.json Configuracion
60
- ├── state.json Estado del workflow
61
- └── memory.md Historial de decisiones
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
- - **Simple project** (prototype, few features) lightweight context, 3-5 tasks
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, etc.) without connecting an API.
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 8x7B | Ultra-fast, free tier |
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` file for any AI |
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
- | File | Content |
189
- |------|---------|
190
- | `project.md` | Vision, objectives, scope |
191
- | `architecture.md` | System structure adapted to complexity |
192
- | `rules.md` | Development standards for your stack |
193
- | `tasks.json` | Task checklist with acceptance criteria |
194
- | `state.json` | Active task, workflow stage |
195
- | `memory.md` | Decision history |
196
- | `config.json` | AI provider config |
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
- cli/Session, branding, file watcher
205
- core/Context engine, tasks, prompt builder
206
- ai/6 provider adapters (Adapter pattern)
207
- utils/File system abstraction
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
- Key patterns: **Adapter** (AI providers), **Observer** (file watcher), **State Machine** (workflow), **Builder** (prompts).
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 and guidelines.
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
- - [Learning guide](docs/learning/README.md) 6 modules following QP2C methodology
225
- - [AGENTS.md](AGENTS.md) — Engineering roles
226
- - [SKILLS.md](SKILLS.md) — Technical competencies
227
- - [YouTube @CreativeCode25](https://www.youtube.com/@CreativeCode25) — Tutorials and walkthroughs
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
- ## Support the project
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
- [![GitHub stars](https://img.shields.io/github/stars/iDevelop25/ccode?style=social)](https://github.com/iDevelop25/ccode)
239
+ <br/>
237
240
 
238
- ---
241
+ [![Star on GitHub](https://img.shields.io/github/stars/iDevelop25/ccode?style=for-the-badge&color=FFB703&label=Star%20on%20GitHub)](https://github.com/iDevelop25/ccode)
239
242
 
240
- ## License
243
+ <br/>
241
244
 
242
- ISC
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('2.2.0');
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.2.0",
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",