Assistente de terminal polyglot em Rust + Ruby + Lua.
LaboratĂłrio de engenharia de IA 100% offline (sem chave de API).
SDD, RAG, Agents, Skills, Workflows RFC e defesas contra prompt injection.
Spec-Driven (Spec Kit) + skills de agente no Cursor.
| Core | Rust (CLI devassist, vector store, host Lua via mlua) |
| Agents | Ruby (think → plan → act → observe, RFC HITL) |
| Plugins | Lua 5.4 (skills e prompt templates) |
| IA | Embeddings e LLM via stubs determinĂsticos |
| Fora de escopo | APIs pagas, UI web, nuvem, Qdrant/Postgres |
| Arquivo | Papel |
|---|---|
.specify/SPEC.md |
O quĂŞ |
.specify/PLAN.md |
Como |
.specify/CONTEXT.md |
Estado atual |
AGENTS.md |
Briefing do agente |
docs/GLOSSARY.md |
Termos para iniciante |
docs/PLAN.md |
Plano + fases |
docs/PRD.md |
PRD |
.specify/COMMITS.md |
Conventional commits |
LICENSE |
MIT |
.cursor/skills/README.md |
Skills do Cursor |
docs/images/cli.png |
Print da CLI |
Se cĂłdigo e spec divergirem, a spec manda.
- Rust (
cargo) - Ruby >= 3.0
- Git
cd devassist_cli
# Build + testes Rust
cd core && cargo test && cargo build
# Plugin Lua
cargo run -- execute ../lua/plugins/hello.lua
# RAG
cargo run -- rag index ../docs/
cargo run -- ask "por que usamos Lua?"
# Prompt templates
cargo run -- prompt benchmark ../lua/templates/
# Segurança
cargo run -- security audit
# Agente Ruby
cd ../agents && ruby run.rb "pesquise RAG e gere um ADR"
# Workflow RFC (pede aprovação humana)
ruby workflow.rb rfc "adicionar streaming"Textos da CLI: inglĂŞs. Docs de ensino: portuguĂŞs. Sem chave de API.
| Comando | O que faz |
|---|---|
execute |
Carrega e roda um plugin Lua |
rag index / ask |
Indexa markdown e recupera chunks |
prompt benchmark |
Mede templates de prompt |
security audit |
Evals de prompt injection |
ruby run.rb |
Loop think → plan → act → observe |
ruby workflow.rb rfc |
RFC com gate humano |
devassist_cli/
AGENTS.md
LICENSE
.specify/
.cursor/skills/
docs/images/cli.png
docs/ # PRD, GLOSSARY, PLAN, ADRs, Design Doc, RFCs
core/ # CLI Rust + vector store + Lua host
lua/plugins/ # hello.lua
lua/templates/ # prompt templates
agents/ # Agents + Skills + Workflows (Ruby)
tests/security/ # Payloads extras
Rust Ă© o nĂşcleo (clap, store, mlua). Ruby orquestra agentes e o RFC. Lua entra como plugin e template. O store gerado fica em core/vector_store.json (gitignored).
MIT. Ver LICENSE. Uso educacional; sem API paga.
