Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
152 commits
Select commit Hold shift + click to select a range
01285fd
chore: sync all local work to backup — squads, agents, skills, configs
Mar 9, 2026
5997127
backup: 2026-03-09 13:30
Mar 9, 2026
df214c4
fix: remove .venv from tracking, add to .gitignore
Mar 9, 2026
b873969
backup: 2026-03-09 14:04
Mar 9, 2026
cd1e692
feat(renner-silva): upgrade mind clone v1.1 → v1.2
Mar 9, 2026
7f25b39
chore(squads): kaizen audit — optimize italo-marsili, leandro-ladeira…
Mar 9, 2026
41c4e1e
feat: project management system — INDEX.md, sessions, slash commands
Mar 9, 2026
802e301
feat: enforce project structure — rules + validation hook
Mar 9, 2026
fc5e6de
feat: add project-specific resume shortcut to checkpoint/resume flow
Mar 9, 2026
de00e05
backup: 2026-03-09 16:04
Mar 9, 2026
c8c9eb8
chore: checkpoint session — ensinio outreach 77/77 + CLAUDE.md v4.1
Mar 10, 2026
223bb36
feat(prospector): dual scoring v3.0 — matriz cliente x parceiro + mod…
Mar 10, 2026
84ad141
config: update gemini settings and behavioral rules (NEVER/ALWAYS)
Mar 10, 2026
93e9e56
chore: checkpoint session — phone resolution 77/77 + Google Sheets sc…
Mar 10, 2026
a2ffee8
feat(ensinio): phone resolution 77/77 + Google Sheets pipeline + OAut…
Mar 10, 2026
cde7619
chore: checkpoint session — ensinio phone resolution + sheets + MCP O…
Mar 10, 2026
06edcff
chore: checkpoint session — naval mind clone Elite 95% + framework cl…
Mar 11, 2026
a1cd005
chore: checkpoint — naval-ravikant-mind project + session file
Mar 11, 2026
3b39cb0
chore: checkpoint session — BRE squad v1.2 quality upgrade
Mar 11, 2026
175ac89
chore: checkpoint — BRE project index + session files
Mar 11, 2026
42c02f4
docs: update ACTIVE.md + ensinio-prospector INDEX
Mar 11, 2026
a7500c2
chore: checkpoint session — ensinio-prospector-app M1+M2 done + VK Ta…
Mar 11, 2026
9b2eb83
feat(mind-cloning): squad v1.2.0 — 10 gaps resolvidos da avaliação tr…
Mar 11, 2026
bc1d7e0
chore: checkpoint session — meta-ads-prospector v2.0 pipeline
Mar 11, 2026
7e82fc1
chore: checkpoint session — meta-ads-prospector v2.0 Apify pipeline
Mar 11, 2026
0f45113
feat(bre): DNA extraction v2.0 — 4 experts from source books
Mar 11, 2026
74292e8
chore: checkpoint — BRE v2.0 DNA extraction from source books
Mar 11, 2026
abd730b
feat(bre): v2.1 — checklist enforcement, quick-extract workflow, DMN …
Mar 11, 2026
8b58792
chore: checkpoint — BRE v2.1 audit results + quick wins applied
Mar 11, 2026
927b323
chore: checkpoint session — designcode-ui figma MCP auth
Mar 11, 2026
ca2106c
chore: checkpoint session — designcode-ui audit + 10 componentes falt…
Mar 11, 2026
662b811
chore: checkpoint session — designcode-ui 100% components + storybook
Mar 11, 2026
e62eacc
backup: 2026-03-11 16:57
Mar 11, 2026
59748b2
chore: complete DevOps audit improvements (10/10 maturity) [Story 5.10]
Mar 11, 2026
343a1dc
fix: harden project lifecycle skills (new-project, checkpoint, resume)
Mar 11, 2026
0cdf9ed
feat: add smart next-step suggestions + /new-project-full pipeline
Mar 11, 2026
14ac7c9
refactor: absorb Navigator best practices + delete legacy nav-create-…
Mar 11, 2026
00e29ec
chore: checkpoint session — GHL integration + squad v4.0
Mar 12, 2026
a7c14e3
docs: checkpoint session 2026-03-12 — GHL integration
Mar 12, 2026
e84efd0
chore: create epic governance structure + squad-ecosystem-quality epic
Mar 12, 2026
04c49fc
chore: add squad-ecosystem-quality epic to ACTIVE.md + create handoff…
Mar 12, 2026
9cee14d
feat: complete GHL sync v3 for 77 mentoria prospects [Story M0.0]
Mar 12, 2026
4cf5496
fix: remove unauthorized automatic message sending from sync script
Mar 12, 2026
74ada1c
feat: create @ensinio/whatsapp-parser module structure [Story M0.1]
Mar 12, 2026
9e39be8
feat: implement WhatsApp parser with intelligent name extraction [Sto…
Mar 12, 2026
3cf64ce
feat: implement phone number normalizer [Story M0.1]
Mar 12, 2026
f79d9eb
feat: implement data validator with 6 blocking + 5 warning checks [St…
Mar 12, 2026
e25c7ac
docs: create handoff for M0.1 AC-4 tests
Mar 12, 2026
d644933
test: implement unit tests with 80%+ coverage [Story M0.1 AC-4]
Mar 12, 2026
c6bee77
chore: sync slash commands for all models (claude, gemini, codex)
Mar 12, 2026
cf37db1
docs: enrich ensinio-mind with YouTube video source (v2.1.0)
Mar 12, 2026
6edba68
docs: document complete Ensinio WhatsApp Prospector pipeline flow [Se…
Mar 12, 2026
84f9d4b
docs: update google sheets with personalized messages and tracking
Mar 12, 2026
0be3852
docs: refactor Ensinio Prospector v5.0 (Sheets-First Architecture)
Mar 12, 2026
fa16e17
feat: create Phase 8 (populate-sheet-v5.md) and Phase 9 (sync-to-ghl-…
Mar 12, 2026
5a5cf66
docs: add handoff for Ensinio Prospector v5.0
Mar 12, 2026
a0cd37a
feat: implement parser module integration (M0.1-AC5)
Mar 12, 2026
be15958
docs: complete M0.1-AC5 story (Ready for Review)
Mar 12, 2026
7f82131
docs: add KAIZEN-recommended behavioral rules (read-first, test-enfor…
Mar 12, 2026
e0d53d3
chore: update project index with garimpoai
Mar 12, 2026
63df3b7
feat: add Evolution WhatsApp API tool (zero deps)
Mar 12, 2026
641eb31
feat: add emoji-only name resolution from chat context
Mar 12, 2026
52a01d2
chore: checkpoint session — ensinio sheets audit + GHL sync
Mar 13, 2026
39a2493
refactor: centralize 36 mind clones in squads/mind-cloning/minds/
Mar 13, 2026
0639f38
chore: checkpoint session metadata — squad audit + ensinio GHL sync h…
Mar 13, 2026
72fcade
feat: add youtube-captions tool (extract subtitles without audio down…
Mar 13, 2026
7051922
feat: add YouTube search mode to youtube-captions tool
Mar 13, 2026
67ba37c
feat: add YouTube search mode to youtube-captions tool
Mar 13, 2026
d6c45fd
fix: add --list-only, --delay flags and rate limit handling to youtub…
Mar 13, 2026
b7ab6e6
feat: add aios-transcriber unified tool, deprecate video-transcriber
Mar 13, 2026
f52c5ca
feat: add transcript API fallback and --cookies for rate limit bypass
Mar 13, 2026
9a8b5fe
feat: add 3-tier fallback chain for rate limit bypass
Mar 13, 2026
e528137
refactor: use yt-dlp native browser cookies instead of browser-cookie3
Mar 13, 2026
a9ee0ee
feat: add --proxy flag for rate limit bypass via proxy/VPN
Mar 13, 2026
5401088
refactor: convert youtube-captions to importable library [TRANS-1]
Mar 13, 2026
6e41a34
feat: add veto conditions to transcription pipeline [TRANS-2]
Mar 13, 2026
52e2213
chore: consolidate transcription tool refs across squads [TRANS-5]
Mar 13, 2026
fe3ff02
test: add 116 automated tests for transcription pipeline [TRANS-3]
Mar 13, 2026
13c01d3
feat: add structured logging and splitter integration to aios-transcr…
Mar 13, 2026
8eccc44
docs: complete TRANS-4 story (all 7 ACs done)
Mar 13, 2026
7dc8a5d
chore: checkpoint session — advisory board 11 minds cloned
Mar 13, 2026
49b4df3
feat: add unified quality dashboard for AIOS ecosystem
Mar 13, 2026
3bf9e65
backup: 2026-03-13 19:44
Mar 13, 2026
fae4349
refactor: consolidate phone resolver and whatsapp utils [REFACTOR-1]
Mar 13, 2026
ffc7ff3
backup: 2026-03-13 19:45
Mar 13, 2026
284470d
backup: 2026-03-13 19:46
Mar 13, 2026
9c59983
feat: create advisor-board squad (14 agents, 3 tasks, 1 workflow)
Mar 13, 2026
fdf75af
docs: checkpoint advisor-board session 2 (squad complete + tested)
Mar 13, 2026
c29deaf
refactor: consolidate outreach parser and document legacy script mapp…
Mar 13, 2026
6d6edd0
feat: auto-sync skills to slash commands in generate-catalog.js
Mar 14, 2026
6114e28
docs: add zeroaudio project to ACTIVE.md
Mar 14, 2026
2caeb68
feat: add agent activation command to checkpoint/resume flow
Mar 14, 2026
242e46c
docs(ensinio-mind): add extract-from-calls task and onboarding-patter…
Mar 14, 2026
1768f03
fix(ensinio-mind): update extract-from-calls to use local .md files i…
Mar 14, 2026
9512266
feat: create God Mode v2.0 skill — custom AIOX orchestrator
Mar 14, 2026
728db02
chore: add god-mode project, tldv-scraper tool, and update session state
Mar 14, 2026
a160f7e
feat(god-mode): add 6 creation references and anti-patterns (44→58/60)
Mar 14, 2026
d05fc5d
feat(god-mode): complete diagnostics and agent paths (58→60/60)
Mar 14, 2026
25461de
feat: add 4 skills + 1 tool adapted from OpenSquad
Mar 14, 2026
1608de6
docs(ensinio-mind): enrich KB v3.0 from tl;dv calls batch 1
Mar 14, 2026
3214385
chore: checkpoint session + god-mode skill update
Mar 14, 2026
d23ea0f
chore: checkpoint session ensinio-mind v3.0
Mar 14, 2026
105b723
feat(ensinio-mind): process batch 2 (5 sales calls, 60 insights)
Mar 14, 2026
ab61dc3
docs(ensinio-mind): add batch 2 final report
Mar 14, 2026
1451bf1
docs(ensinio-mind): enrich KB v2.2 from tl;dv calls batch 3
Mar 14, 2026
9af5efd
docs(ensinio-mind): integrate batch 3 insights (part 1 - sales)
Mar 14, 2026
ccaf58d
task(ensinio-mind): create Part 2 integration task for batch 3
Mar 14, 2026
e44b840
docs(ensinio-mind): integrate batch 3 insights (part 2 - support/ops) ✅
Mar 14, 2026
57773a6
docs(ensinio-mind): create feature requests backlog (7 features)
Mar 14, 2026
ef2569e
feat: add complete project config template system
Mar 15, 2026
a1645d6
feat: harden /new-project with pre-flight validation, decision tree, …
Mar 16, 2026
b59131b
feat: complete Phase 2 hardening for /new-project
Mar 16, 2026
7bcc6ba
feat: complete Phase 3 hardening for /new-project (10/10)
Mar 16, 2026
c9c0610
docs: update checkpoint with Fase 3 completion (10/10 achieved)
Mar 16, 2026
952ff3f
refactor: consolidate /new-project and /new-project-full into single …
Mar 16, 2026
e55ab2b
backup: 2026-03-15 21:56
Mar 16, 2026
c6a6786
feat: add error signals (🚨 ❌) to backup script
Mar 16, 2026
238fd96
fix: remove deprecated hooks array from /new-project template
Mar 16, 2026
54d0378
backup: 2026-03-15 22:37
Mar 16, 2026
e9dd220
backup: 2026-03-15 22:46
Mar 16, 2026
8c4766c
backup: 2026-03-15 22:54
Mar 16, 2026
bec51f2
feat: auto-create symlink to global skills in HYBRID projects
Mar 16, 2026
ea395f1
feat: add skills symlink validation script
Mar 16, 2026
9b5c85c
feat: create global resources symlinks in HYBRID projects
Mar 16, 2026
3c85ba2
docs: update checkpoint with global resources symlinks
Mar 16, 2026
77a18ec
backup: 2026-03-16 11:02
Mar 16, 2026
2a1637d
feat: add auto-reindex hook for ACTIVE.md
Mar 16, 2026
528ed74
docs: update S1.1 progress (85% complete) + checkpoint
Mar 16, 2026
74ff648
feat(ensinio): add background send scripts with Evolution API
Mar 16, 2026
c0dec60
feat: add automatic port management system for AIOX projects
Mar 16, 2026
c478141
fix(ensinio): corrige split de mensagens (despedidas removidas)
Mar 16, 2026
c4d7514
chore: migrate ensinio-whatsapp-prospector to HYBRID project
Mar 16, 2026
4396d62
docs: update ensinio-whatsapp-prospector status (HARD-P0-001 Done)
Mar 16, 2026
43afc0c
chore: checkpoint session (ensinio workflow + squad-architect)
Mar 17, 2026
10d1eb5
feat: add automatic settings.json format validation
Mar 17, 2026
89d2dfc
chore: update ensinio-whatsapp-prospector status (workflow + copy)
Mar 17, 2026
24d1860
chore: delete research-only projects (luiz-fosc-mentoria + luiz-fosc-…
Mar 17, 2026
31e0edc
chore: update ACTIVE.md - ensinio-whatsapp-prospector Wave 3 complete
Mar 17, 2026
5a3a6b8
chore: add luiz-fosc-palestras-negocio to ACTIVE projects
Mar 17, 2026
388dab1
docs: update ACTIVE.md - ensinio-whatsapp-prospector Wave 4 complete …
Mar 17, 2026
1b80889
feat: create luiz-fosc-palestras-negocio project (HYBRID)
Mar 17, 2026
6b6b6bb
feat: add STORY-1.0 benchmarking concorrentes
Mar 17, 2026
c80a97e
chore: checkpoint session luiz-fosc-palestras-negocio
Mar 17, 2026
20cdac1
docs: update Tathi Deandhela README to v2.0.0 (complete)
Mar 18, 2026
ea0bd83
feat: create high-ticket-mastery fusion squad v1.2.0 (score 8.0/10)
Mar 18, 2026
e6c7964
chore: checkpoint session renan-vieira (squad creation complete)
Mar 18, 2026
ce42cae
feat: handoff ecosystem-index story to @dev [PO]
Mar 18, 2026
712ef06
feat: implement ecosystem index automation [Story Complete]
Mar 18, 2026
99f6e7a
feat: add @thiago_finch BOOKEND to /squad skill (TRIO complete)
Mar 18, 2026
6e13029
qa: handoff ecosystem-index to @devops [QA PASS 10/10]
Mar 18, 2026
0e680d8
chore: update session state and ecosystem index
Mar 18, 2026
a5be756
chore: mark qa-to-devops handoff as consumed
Mar 18, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
607 changes: 607 additions & 0 deletions .aios-core/cli/commands/config/index.js

Large diffs are not rendered by default.

86 changes: 86 additions & 0 deletions .aios-core/cli/commands/context/auto.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
/**
* Context Auto Command
* Auto-detect session context from project
*
* Usage: aios context auto [--dry-run]
*
* @module cli/commands/context/auto
*/

const SessionStateManager = require('../../../core/session/state-manager');
const ContextTracker = require('../../../core/session/context-tracker');
const readline = require('readline');

async function execute(args) {
const isDryRun = args.includes('--dry-run');

try {
// Create tracker and detect context
const tracker = new ContextTracker();
const detected = await tracker.detectContext();

// Display detected values
console.log('Auto-detected context:\n');

console.log(' Project:');
console.log(` Type: ${detected.project.type} (confidence: ${Math.round(detected.confidence.projectType * 100)}%)`);
console.log(` Name: ${detected.project.name}`);
console.log(` Emoji: ${detected.project.emoji}`);

if (detected.git.branch) {
console.log('\n Git Status:');
console.log(` Branch: ${detected.git.branch}`);
console.log(` Uncommitted Changes: ${detected.git.hasChanges ? 'yes' : 'no'} ${detected.git.emoji}`);
}

if (detected.status.phase) {
console.log('\n Status:');
console.log(` Phase: ${detected.status.phase} (confidence: ${Math.round(detected.confidence.phase * 100)}%)`);
if (detected.status.progress) {
const [current, total] = detected.status.progress.split('/').map(Number);
const percentage = Math.round((current / total) * 100);
console.log(` Progress: ${detected.status.progress} (${percentage}%)`);
}
}

// Dry run - stop here
if (isDryRun) {
console.log('\n🔍 Dry run - no changes made.');
return;
}

// Ask for confirmation
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout,
});

const answer = await new Promise(resolve => {
rl.question('\nApply this context? [Y/n]: ', resolve);
});
rl.close();

if (answer.toLowerCase() === 'n' || answer.toLowerCase() === 'no') {
console.log('❌ Cancelled.');
process.exit(0);
}

// Apply detected context
const manager = SessionStateManager;
await manager.update({
project: detected.project,
status: {
phase: detected.status.phase,
progress: detected.status.progress,
emoji: detected.status.emoji || (detected.git.hasChanges ? '🟡' : '🟢'),
},
});

console.log('\n✓ Context updated');
} catch (error) {
console.error(`Error detecting context: ${error.message}`);
process.exit(1);
}
}

module.exports = { execute };
41 changes: 41 additions & 0 deletions .aios-core/cli/commands/context/clear.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
/**
* Context Clear Command
* Reset session context to defaults
*
* Usage: aios context clear [--archive]
*
* @module cli/commands/context/clear
*/

const SessionStateManager = require('../../../core/session/state-manager');
const path = require('path');

async function execute(args) {
const shouldArchive = args.includes('--archive');

try {
const manager = SessionStateManager;

// Get current session for archive filename
const currentSession = await manager.read();

// Clear (which archives automatically if session has data)
await manager.clear();


// Show confirmation
console.log('✓ Context cleared');

// If session was archived, show path
if (shouldArchive && currentSession.project.name) {
const timestamp = new Date().toISOString().replace(/[:.]/g, '-');
const archivePath = path.join('.aios', 'sessions', 'history', `session-${timestamp}.json`);
console.log(` Session archived to: ${archivePath}`);
}
} catch (error) {
console.error(`Error clearing context: ${error.message}`);
process.exit(1);
}
}

module.exports = { execute };
101 changes: 101 additions & 0 deletions .aios-core/cli/commands/context/index.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
/**
* Context Command Router
* Routes aios context subcommands to appropriate handlers
*
* @module cli/commands/context
*/

const set = require('./set');
const show = require('./show');
const clear = require('./clear');
const auto = require('./auto');
const setEpic = require('./set-epic');
const setStory = require('./set-story');
const setTask = require('./set-task');

async function run(args) {
const subcommand = args[3] || 'show'; // Default to 'show'

switch (subcommand) {
case 'set':
await set.execute(args.slice(4));
break;
case 'set-epic':
await setEpic.execute(args.slice(4));
break;
case 'set-story':
await setStory.execute(args.slice(4));
break;
case 'set-task':
await setTask.execute(args.slice(4));
break;
case 'show':
await show.execute(args.slice(4));
break;
case 'clear':
await clear.execute(args.slice(4));
break;
case 'auto':
await auto.execute(args.slice(4));
break;
case 'help':
case '--help':
case '-h':
showHelp();
break;
default:
console.error(`Unknown subcommand: ${subcommand}`);
console.log('Run "aios context help" for usage');
process.exit(1);
}
}

function showHelp() {
console.log(`
Usage: aios context <command> [options]

Commands:
set <name> Set context manually
set-epic <epic> Set epic (main context - always visible)
set-story <story> Set story (mid-level context)
set-task <task> Set task (momentary context)
show Display current context (default)
clear Reset context
auto Auto-detect context from project

Options for 'set':
--emoji <emoji> Project emoji
--type <type> Project type (framework/squad/app/tool/design-system)
--status <emoji> Status emoji
--phase <phase> Work phase
--progress <n/m> Progress (e.g., "2/5")
--agent <agent> Active agent
--story <story> Story ID

Options for 'set-epic', 'set-story', 'set-task':
--clear Clear the epic/story/task

Options for 'show':
--json Output as JSON

Options for 'clear':
--archive Archive session before clearing

Options for 'auto':
--dry-run Show detection without applying

Examples:
aios context set "aios-core" --emoji 🏗️ --progress 2/5
aios context set-epic "Baixar vídeos YouTube"
aios context set-story "Implementar playlist"
aios context set-task "Commit GitHub"
aios context set-task --clear
aios context show
aios context show --json
aios context clear --archive
aios context auto
aios context auto --dry-run
`);
}

module.exports = { run };
129 changes: 129 additions & 0 deletions .aios-core/cli/commands/context/set-context.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,129 @@
#!/usr/bin/env node
/**
* AIOS Context Setter
* Updates session context to display in terminal tab title and status bar
*
* Usage:
* aios context set <text>
* aios context set epic "Epic name"
* aios context set story "Story name"
* aios context set task "Task name"
* aios context clear
*/

const fs = require('fs').promises;
const path = require('path');
const { execSync } = require('child_process');

const SESSION_FILE = '.aios/session.json';

async function setContext(args) {
const projectRoot = process.cwd();
const sessionPath = path.join(projectRoot, SESSION_FILE);

try {
// Read current session
let session = {};
try {
session = JSON.parse(await fs.readFile(sessionPath, 'utf-8'));
} catch (error) {
if (error.code !== 'ENOENT') throw error;
// Create default session if doesn't exist
session = {
version: '1.0.0',
pid: process.pid,
sessionId: `session-${Date.now()}`,
project: {
type: 'unknown',
name: path.basename(projectRoot),
emoji: '📦',
},
status: {
phase: 'active',
progress: '',
currentTask: '',
emoji: '',
},
context: {},
metadata: {
startedAt: new Date().toISOString(),
lastUpdatedAt: new Date().toISOString(),
},
};
}

// Parse arguments
const [type, ...valueParts] = args;
const value = valueParts.join(' ');

if (!session.context) {
session.context = {};
}

// Handle different commands
if (type === 'clear') {
session.context = {};
console.log('✅ Context cleared');
} else if (type === 'epic' || type === 'story' || type === 'task') {
if (!value) {
console.error(`❌ Error: Please provide a ${type} name`);
process.exit(1);
}
session.context[type] = value;
console.log(`✅ ${type} set: ${value}`);
} else {
// Default: set as current task
const contextText = [type, ...valueParts].join(' ');
session.context.task = contextText;
console.log(`✅ Context set: ${contextText}`);
}

// Update timestamp
session.metadata = session.metadata || {};
session.metadata.lastUpdatedAt = new Date().toISOString();

// Write back
await fs.writeFile(sessionPath, JSON.stringify(session, null, 2), 'utf-8');

// Show current context
const contextParts = [
session.context.epic,
session.context.story,
session.context.task,
].filter(Boolean);

if (contextParts.length > 0) {
console.log(`📍 Current context: ${contextParts.join(' → ')}`);
}

} catch (error) {
console.error('❌ Error setting context:', error.message);
process.exit(1);
}
}

// Get arguments (skip node and script name)
const args = process.argv.slice(2);

if (args.length === 0) {
console.log(`
AIOS Context Setter

Usage:
aios context set <text> Set context as current task
aios context set epic "Epic name" Set epic level context
aios context set story "Story name" Set story level context
aios context set task "Task name" Set task level context
aios context clear Clear all context

Examples:
aios context set "Landing Page Help"
aios context set epic "Q1 2026 Features"
aios context set story "User Authentication"
aios context set task "Implement login form"
aios context clear
`);
process.exit(0);
}

setContext(args);
Loading
Loading