conectese 0.1.14
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 +265 -0
- package/_conectese/.conectese-version +1 -0
- package/_conectese/config/playwright.config.json +11 -0
- package/_conectese/core/architect.agent.yaml +110 -0
- package/_conectese/core/best-practices/_catalog.yaml +116 -0
- package/_conectese/core/best-practices/blog-post.md +132 -0
- package/_conectese/core/best-practices/blog-seo.md +127 -0
- package/_conectese/core/best-practices/copywriting.md +426 -0
- package/_conectese/core/best-practices/data-analysis.md +401 -0
- package/_conectese/core/best-practices/email-newsletter.md +118 -0
- package/_conectese/core/best-practices/email-sales.md +110 -0
- package/_conectese/core/best-practices/image-design.md +348 -0
- package/_conectese/core/best-practices/instagram-feed.md +235 -0
- package/_conectese/core/best-practices/instagram-reels.md +112 -0
- package/_conectese/core/best-practices/instagram-stories.md +107 -0
- package/_conectese/core/best-practices/linkedin-article.md +116 -0
- package/_conectese/core/best-practices/linkedin-post.md +121 -0
- package/_conectese/core/best-practices/researching.md +349 -0
- package/_conectese/core/best-practices/review.md +269 -0
- package/_conectese/core/best-practices/social-networks-publishing.md +294 -0
- package/_conectese/core/best-practices/strategist.md +344 -0
- package/_conectese/core/best-practices/technical-writing.md +365 -0
- package/_conectese/core/best-practices/twitter-post.md +105 -0
- package/_conectese/core/best-practices/twitter-thread.md +122 -0
- package/_conectese/core/best-practices/whatsapp-broadcast.md +107 -0
- package/_conectese/core/best-practices/youtube-script.md +122 -0
- package/_conectese/core/best-practices/youtube-shorts.md +112 -0
- package/_conectese/core/prompts/build.prompt.md +547 -0
- package/_conectese/core/prompts/design.prompt.md +469 -0
- package/_conectese/core/prompts/discovery.prompt.md +269 -0
- package/_conectese/core/prompts/sherlock-instagram.md +123 -0
- package/_conectese/core/prompts/sherlock-linkedin.md +73 -0
- package/_conectese/core/prompts/sherlock-shared.md +684 -0
- package/_conectese/core/prompts/sherlock-twitter.md +78 -0
- package/_conectese/core/prompts/sherlock-youtube.md +85 -0
- package/_conectese/core/runner.pipeline.md +535 -0
- package/_conectese/core/skills.engine.md +381 -0
- package/agents/data-extractor/AGENT.md +13 -0
- package/agents/direito-adaneiro/AGENT.md +18 -0
- package/agents/direito-administrativo/AGENT.md +18 -0
- package/agents/direito-aeroporta-rio/AGENT.md +18 -0
- package/agents/direito-agra-rio/AGENT.md +18 -0
- package/agents/direito-ambiental/AGENT.md +18 -0
- package/agents/direito-banca-rio/AGENT.md +18 -0
- package/agents/direito-civil/AGENT.md +18 -0
- package/agents/direito-constitcional/AGENT.md +18 -0
- package/agents/direito-da-crianc-a-e-do-adolescente-eca/AGENT.md +18 -0
- package/agents/direito-da-propriedade-intelectal/AGENT.md +18 -0
- package/agents/direito-de-ami-lia/AGENT.md +18 -0
- package/agents/direito-de-tra-nsito/AGENT.md +18 -0
- package/agents/direito-desportivo/AGENT.md +18 -0
- package/agents/direito-digital/AGENT.md +18 -0
- package/agents/direito-do-consmidor/AGENT.md +18 -0
- package/agents/direito-do-trabalho/AGENT.md +18 -0
- package/agents/direito-econo-mico/AGENT.md +18 -0
- package/agents/direito-eleitoral/AGENT.md +18 -0
- package/agents/direito-empresarial/AGENT.md +18 -0
- package/agents/direito-imobilia-rio/AGENT.md +18 -0
- package/agents/direito-inanceiro/AGENT.md +18 -0
- package/agents/direito-internacional/AGENT.md +18 -0
- package/agents/direito-mari-timo/AGENT.md +18 -0
- package/agents/direito-me-dico-e-da-sa-de/AGENT.md +18 -0
- package/agents/direito-militar/AGENT.md +18 -0
- package/agents/direito-ndia-rio/AGENT.md +18 -0
- package/agents/direito-notarial-e-registral/AGENT.md +18 -0
- package/agents/direito-penal/AGENT.md +18 -0
- package/agents/direito-previdencia-rio/AGENT.md +18 -0
- package/agents/direito-processal-civil/AGENT.md +18 -0
- package/agents/direito-processal-do-trabalho/AGENT.md +18 -0
- package/agents/direito-processal-militar/AGENT.md +18 -0
- package/agents/direito-processal-penal/AGENT.md +18 -0
- package/agents/direito-rbani-stico/AGENT.md +18 -0
- package/agents/direito-secrita-rio/AGENT.md +18 -0
- package/agents/direito-sindical/AGENT.md +18 -0
- package/agents/direito-societa-rio/AGENT.md +18 -0
- package/agents/direito-tribta-rio/AGENT.md +18 -0
- package/agents/direitos-hmanos/AGENT.md +18 -0
- package/agents/legal-analyst/AGENT.md +16 -0
- package/agents/legal-synthesizer/AGENT.md +13 -0
- package/agents/lgpd-anonymizer/AGENT.md +14 -0
- package/agents/lgpd-restorer/AGENT.md +14 -0
- package/agents/task-router/AGENT.md +13 -0
- package/bin/conectese.js +73 -0
- package/dashboard/index.html +12 -0
- package/dashboard/package-lock.json +1971 -0
- package/dashboard/package.json +28 -0
- package/dashboard/public/assets/avatars/Female1_1wave.png +0 -0
- package/dashboard/public/assets/avatars/Female1_2wave.png +0 -0
- package/dashboard/public/assets/avatars/Female1_blink.png +0 -0
- package/dashboard/public/assets/avatars/Female1_talk.png +0 -0
- package/dashboard/public/assets/avatars/Female2_1wave.png +0 -0
- package/dashboard/public/assets/avatars/Female2_2wave.png +0 -0
- package/dashboard/public/assets/avatars/Female2_blink.png +0 -0
- package/dashboard/public/assets/avatars/Female2_talk.png +0 -0
- package/dashboard/public/assets/avatars/Female3_blink.png +0 -0
- package/dashboard/public/assets/avatars/Female3_talk.png +0 -0
- package/dashboard/public/assets/avatars/Female3_wave.png +0 -0
- package/dashboard/public/assets/avatars/Female4_blink.png +0 -0
- package/dashboard/public/assets/avatars/Female4_talk.png +0 -0
- package/dashboard/public/assets/avatars/Female4_wave.png +0 -0
- package/dashboard/public/assets/avatars/Female5_blink.png +0 -0
- package/dashboard/public/assets/avatars/Female5_talk.png +0 -0
- package/dashboard/public/assets/avatars/Female5_wave.png +0 -0
- package/dashboard/public/assets/avatars/Female6_blink.png +0 -0
- package/dashboard/public/assets/avatars/Female6_talk.png +0 -0
- package/dashboard/public/assets/avatars/Female6_wave.png +0 -0
- package/dashboard/public/assets/avatars/Male1_1wave.png +0 -0
- package/dashboard/public/assets/avatars/Male1_2wave.png +0 -0
- package/dashboard/public/assets/avatars/Male1_blink.png +0 -0
- package/dashboard/public/assets/avatars/Male1_talk.png +0 -0
- package/dashboard/public/assets/avatars/Male2_1wave.png +0 -0
- package/dashboard/public/assets/avatars/Male2_2wave.png +0 -0
- package/dashboard/public/assets/avatars/Male2_blink.png +0 -0
- package/dashboard/public/assets/avatars/Male2_talk.png +0 -0
- package/dashboard/public/assets/avatars/Male3_blink.png +0 -0
- package/dashboard/public/assets/avatars/Male3_talk.png +0 -0
- package/dashboard/public/assets/avatars/Male3_wave.png +0 -0
- package/dashboard/public/assets/avatars/Male4_blink.png +0 -0
- package/dashboard/public/assets/avatars/Male4_talk.png +0 -0
- package/dashboard/public/assets/avatars/Male4_wave.png +0 -0
- package/dashboard/public/assets/desks/desktop_set_black_down.png +0 -0
- package/dashboard/public/assets/desks/desktop_set_black_down_coding-1.png +0 -0
- package/dashboard/public/assets/desks/desktop_set_black_down_coding.png +0 -0
- package/dashboard/public/assets/desks/desktop_set_black_up.png +0 -0
- package/dashboard/public/assets/desks/desktop_set_white_down.png +0 -0
- package/dashboard/public/assets/desks/desktop_set_white_down_coding-1.png +0 -0
- package/dashboard/public/assets/desks/desktop_set_white_down_coding.png +0 -0
- package/dashboard/public/assets/desks/desktop_set_white_up.png +0 -0
- package/dashboard/public/assets/furniture/armchair_tan.png +0 -0
- package/dashboard/public/assets/furniture/armchair_tan_down.png +0 -0
- package/dashboard/public/assets/furniture/backpack_blue.png +0 -0
- package/dashboard/public/assets/furniture/backpack_red.png +0 -0
- package/dashboard/public/assets/furniture/blinds.png +0 -0
- package/dashboard/public/assets/furniture/blinds_large_closed_white.png +0 -0
- package/dashboard/public/assets/furniture/bookshelf.png +0 -0
- package/dashboard/public/assets/furniture/bookshelf_purple_tall.png +0 -0
- package/dashboard/public/assets/furniture/bulletin_board.png +0 -0
- package/dashboard/public/assets/furniture/clock.png +0 -0
- package/dashboard/public/assets/furniture/coffee_mug.png +0 -0
- package/dashboard/public/assets/furniture/coffee_mug_blue.png +0 -0
- package/dashboard/public/assets/furniture/coffee_table.png +0 -0
- package/dashboard/public/assets/furniture/coffeepot_right.png +0 -0
- package/dashboard/public/assets/furniture/coffeetable_black_horizontal.png +0 -0
- package/dashboard/public/assets/furniture/couch.png +0 -0
- package/dashboard/public/assets/furniture/couch_tan_down.png +0 -0
- package/dashboard/public/assets/furniture/cushion_blue.png +0 -0
- package/dashboard/public/assets/furniture/cushion_tan.png +0 -0
- package/dashboard/public/assets/furniture/desk_wood.png +0 -0
- package/dashboard/public/assets/furniture/fancy_rug.png +0 -0
- package/dashboard/public/assets/furniture/fancy_rug_wide.png +0 -0
- package/dashboard/public/assets/furniture/flowers1.png +0 -0
- package/dashboard/public/assets/furniture/flowers2.png +0 -0
- package/dashboard/public/assets/furniture/lamp_tan.png +0 -0
- package/dashboard/public/assets/furniture/lantern.png +0 -0
- package/dashboard/public/assets/furniture/monstera.png +0 -0
- package/dashboard/public/assets/furniture/monstera_small.png +0 -0
- package/dashboard/public/assets/furniture/picture_frame.png +0 -0
- package/dashboard/public/assets/furniture/plant1.png +0 -0
- package/dashboard/public/assets/furniture/plant2.png +0 -0
- package/dashboard/public/assets/furniture/plant3.png +0 -0
- package/dashboard/public/assets/furniture/plant_poof.png +0 -0
- package/dashboard/public/assets/furniture/plant_spindly.png +0 -0
- package/dashboard/public/assets/furniture/poster_blue.png +0 -0
- package/dashboard/public/assets/furniture/rug.png +0 -0
- package/dashboard/public/assets/furniture/succulent_blue.png +0 -0
- package/dashboard/public/assets/furniture/succulent_green.png +0 -0
- package/dashboard/public/assets/furniture/treasurechest_closed_gold.png +0 -0
- package/dashboard/public/assets/furniture/water_cooler_better.png +0 -0
- package/dashboard/public/assets/furniture/whiteboard.png +0 -0
- package/dashboard/public/assets/furniture/whiteboard_stand_graph.png +0 -0
- package/dashboard/public/assets/furniture/window_blinds_open.png +0 -0
- package/dashboard/src/App.tsx +46 -0
- package/dashboard/src/components/SquadCard.tsx +47 -0
- package/dashboard/src/components/SquadSelector.tsx +61 -0
- package/dashboard/src/components/StatusBadge.tsx +32 -0
- package/dashboard/src/components/StatusBar.tsx +97 -0
- package/dashboard/src/hooks/useSquadSocket.ts +135 -0
- package/dashboard/src/lib/formatTime.ts +16 -0
- package/dashboard/src/lib/normalizeState.ts +25 -0
- package/dashboard/src/main.tsx +10 -0
- package/dashboard/src/office/AgentSprite.ts +241 -0
- package/dashboard/src/office/OfficeScene.ts +153 -0
- package/dashboard/src/office/PhaserGame.tsx +80 -0
- package/dashboard/src/office/RoomBuilder.ts +190 -0
- package/dashboard/src/office/assetKeys.ts +150 -0
- package/dashboard/src/office/palette.ts +32 -0
- package/dashboard/src/plugin/squadWatcher.ts +233 -0
- package/dashboard/src/store/useSquadStore.ts +56 -0
- package/dashboard/src/styles/globals.css +36 -0
- package/dashboard/src/types/state.ts +63 -0
- package/dashboard/src/vite-env.d.ts +1 -0
- package/dashboard/test-results/.last-run.json +4 -0
- package/dashboard/tsconfig.json +24 -0
- package/dashboard/tsconfig.tsbuildinfo +1 -0
- package/dashboard/vite.config.ts +13 -0
- package/package.json +53 -0
- package/skills/README.md +63 -0
- package/skills/apify/SKILL.md +55 -0
- package/skills/blotato/SKILL.md +63 -0
- package/skills/canva/SKILL.md +60 -0
- package/skills/conectese-agent-creator/SKILL.md +192 -0
- package/skills/conectese-skill-creator/SKILL.md +407 -0
- package/skills/conectese-skill-creator/agents/analyzer.md +274 -0
- package/skills/conectese-skill-creator/agents/comparator.md +202 -0
- package/skills/conectese-skill-creator/agents/grader.md +223 -0
- package/skills/conectese-skill-creator/assets/eval_review.html +146 -0
- package/skills/conectese-skill-creator/eval-viewer/generate_review.py +471 -0
- package/skills/conectese-skill-creator/eval-viewer/viewer.html +1325 -0
- package/skills/conectese-skill-creator/references/schemas.md +430 -0
- package/skills/conectese-skill-creator/references/skill-format.md +235 -0
- package/skills/conectese-skill-creator/scripts/__init__.py +0 -0
- package/skills/conectese-skill-creator/scripts/aggregate_benchmark.py +401 -0
- package/skills/conectese-skill-creator/scripts/quick_validate.py +103 -0
- package/skills/conectese-skill-creator/scripts/run_eval.py +310 -0
- package/skills/conectese-skill-creator/scripts/utils.py +47 -0
- package/skills/image-ai-generator/SKILL.md +124 -0
- package/skills/image-ai-generator/scripts/generate.py +175 -0
- package/skills/image-creator/SKILL.md +155 -0
- package/skills/image-fetcher/SKILL.md +91 -0
- package/skills/instagram-publisher/SKILL.md +119 -0
- package/skills/instagram-publisher/scripts/publish.js +165 -0
- package/skills/resend/SKILL.md +80 -0
- package/skills/template-designer/SKILL.md +201 -0
- package/skills/template-designer/base-templates/model-a.html +27 -0
- package/skills/template-designer/base-templates/model-b.html +31 -0
- package/skills/template-designer/base-templates/model-c.html +42 -0
- package/src/agents-cli.js +158 -0
- package/src/agents.js +134 -0
- package/src/i18n.js +48 -0
- package/src/init.js +341 -0
- package/src/locales/en.json +73 -0
- package/src/locales/es.json +72 -0
- package/src/locales/pt-BR.json +72 -0
- package/src/logger.js +38 -0
- package/src/prompt.js +46 -0
- package/src/readme/README.md +119 -0
- package/src/runs.js +90 -0
- package/src/skills-cli.js +157 -0
- package/src/skills.js +146 -0
- package/src/update.js +169 -0
- package/templates/_conectese/.conectese-version +1 -0
- package/templates/_conectese/_investigations/.gitkeep +0 -0
- package/templates/ide-templates/antigravity/.agent/rules/conectese.md +55 -0
- package/templates/ide-templates/antigravity/.agent/workflows/conectese.md +102 -0
- package/templates/ide-templates/claude-code/.claude/skills/conectese/SKILL.md +182 -0
- package/templates/ide-templates/claude-code/.mcp.json +8 -0
- package/templates/ide-templates/claude-code/CLAUDE.md +43 -0
- package/templates/ide-templates/codex/.agents/skills/conectese/SKILL.md +6 -0
- package/templates/ide-templates/codex/AGENTS.md +105 -0
- package/templates/ide-templates/cursor/.cursor/commands/conectese.md +9 -0
- package/templates/ide-templates/cursor/.cursor/mcp.json +8 -0
- package/templates/ide-templates/cursor/.cursor/rules/conectese.mdc +48 -0
- package/templates/ide-templates/cursor/.cursorignore +3 -0
- package/templates/ide-templates/opencode/.opencode/commands/conectese.md +9 -0
- package/templates/ide-templates/opencode/AGENTS.md +105 -0
- package/templates/ide-templates/vscode-copilot/.github/prompts/conectese.prompt.md +201 -0
- package/templates/ide-templates/vscode-copilot/.vscode/mcp.json +8 -0
- package/templates/ide-templates/vscode-copilot/.vscode/settings.json +3 -0
- package/templates/package.json +8 -0
- package/templates/squads/.gitkeep +0 -0
package/README.md
ADDED
|
@@ -0,0 +1,265 @@
|
|
|
1
|
+
# conectese
|
|
2
|
+
|
|
3
|
+
Crie equipes (squads) de agentes de IA focadas no ambiente jurídico — direto da sua IDE.
|
|
4
|
+
|
|
5
|
+
O conectese é um framework de orquestração multi-agente voltado inteiramente para **Advogados Especializados e Escritórios de Advocacia**. Descreva a necessidade do seu caso em linguagem natural, e o conectese cria uma equipe de agentes e analistas jurídicos de IA que trabalham juntos para melhorar a análise processual, garantir a privacidade (LGPD) e dar suporte na sua tomada de decisão.
|
|
6
|
+
|
|
7
|
+
## Conheça mais
|
|
8
|
+
|
|
9
|
+
[conecte.se](https://conecte.se) - **Contato:** carlos@conecte.se
|
|
10
|
+
|
|
11
|
+
## O que é um Squad Jurídico?
|
|
12
|
+
|
|
13
|
+
Um squad jurídico é uma equipe de agentes de IA que colaboram para destrinchar e solucionar um caso ou analisar um conjunto probatório. Cada agente tem um papel específico (como extração, anonimização e formação de tese). Eles executam em pipeline com *checkpoints* onde o agente pausa e pede sua aprovação antes de tomar qualquer decisão sensível.
|
|
14
|
+
|
|
15
|
+
Exemplo do nosso **Pipeline OpenLaw**:
|
|
16
|
+
|
|
17
|
+
- **Extrator de Dados** lê peças e provas processuais brutas
|
|
18
|
+
- **Especialista LGPD (Anonimizador)** higieniza os dados e mascara informações pessoais e sensíveis
|
|
19
|
+
- **Analista Jurídico Geral** monta o panorama probatório e interroga o advogado humano
|
|
20
|
+
- **Orquestrador de Pareceres** convoca os Especialistas (Direito Penal, Civil, Tributário, etc)
|
|
21
|
+
- **Compositor de Minutas** redige a fundamentação coesa e unificada
|
|
22
|
+
- **Restaurador LGPD** reverte a anonimização e insere os dados reais no documento final
|
|
23
|
+
|
|
24
|
+
## Para quem?
|
|
25
|
+
|
|
26
|
+
Para profissionais do Direito e equipes que desejam alavancar produtividade com máxima segurança e privacidade usando IA.
|
|
27
|
+
|
|
28
|
+
- **Advogados Autônomos** — ganhe suporte de especialistas virtuais em todas as áreas do direito
|
|
29
|
+
- **Escritórios de Advocacia (Boutiques e Massificados)** — crie pipelines reutilizáveis para triar centenas de peças por dia
|
|
30
|
+
- **Departamentos Jurídicos In-House** — automatize análise de contratos, due diligence corporativa e adequação à LGPD
|
|
31
|
+
- **Pesquisadores Jurídicos** — encontre teses, jurisprudências e sumulas relacionadas aos autos rapidamente
|
|
32
|
+
|
|
33
|
+
## O que dá pra fazer?
|
|
34
|
+
|
|
35
|
+
- **Análise de Iniciais e Defesas** — ler autos densos, extrair fatias de prazo, pedidos e fatos principais
|
|
36
|
+
- **Anonimização Automática LGPD** — preparar documentos protegidos para análise de modelos de LLM na nuvem
|
|
37
|
+
- **Elaboração de Minutas e Pareceres** — cruzar argumentos de especialistas para redigir peças processuais
|
|
38
|
+
- **Triagem Massificada** — ler publicações nos diários oficiais e encaminhar para a frente de trabalho correta
|
|
39
|
+
- **Auditoria de Contratos** — revisar cláusulas buscando riscos para a empresa ou para o cliente
|
|
40
|
+
|
|
41
|
+
## Instalação
|
|
42
|
+
|
|
43
|
+
**Pré-requisito:** Node.js 20+
|
|
44
|
+
|
|
45
|
+
```bash
|
|
46
|
+
npx conectese init
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
Para atualizar uma instalação existente:
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
npx conectese update
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
## IDEs Suportadas
|
|
56
|
+
|
|
57
|
+
| IDE | Status |
|
|
58
|
+
|-----|--------|
|
|
59
|
+
| Claude Code | Disponível |
|
|
60
|
+
| Cursor | Disponível |
|
|
61
|
+
| VS Code + Copilot | Disponível |
|
|
62
|
+
| Codex (OpenAI) | Disponível |
|
|
63
|
+
| Open Code | Disponível |
|
|
64
|
+
| Antigravity | Disponível |
|
|
65
|
+
|
|
66
|
+
## Escritório Virtual (Conectese Dashboard)
|
|
67
|
+
|
|
68
|
+
O Escritório Virtual é uma interface visual 2D que mostra seus agentes trabalhando no seu caso em tempo real.
|
|
69
|
+
|
|
70
|
+
**Passo 1 — Gere o dashboard** (na sua IDE):
|
|
71
|
+
|
|
72
|
+
```
|
|
73
|
+
/conectese dashboard
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
**Passo 2 — Sirva localmente** (no terminal):
|
|
77
|
+
|
|
78
|
+
```bash
|
|
79
|
+
npx serve squads/<nome-do-squad>/dashboard
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
**Passo 3 —** Abra `http://localhost:3000` no seu navegador.
|
|
83
|
+
|
|
84
|
+
## Criando seu Squad
|
|
85
|
+
|
|
86
|
+
Abra o menu:
|
|
87
|
+
|
|
88
|
+
```
|
|
89
|
+
/conectese
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
O **Conectese** vai te mostrar as opções disponíveis.
|
|
93
|
+
|
|
94
|
+
Para criar um novo squad personalizado, o **Arquiteto** fará algumas perguntas sobre qual a área do seu escritório e o tipo de casos, e projetará o squad ideal configurando tudo. Você sempre aprova o design (a "tese") antes de qualquer execução.
|
|
95
|
+
|
|
96
|
+
## Executando um Squad
|
|
97
|
+
|
|
98
|
+
Você pode executar a triagem de um caso pedindo diretamente:
|
|
99
|
+
|
|
100
|
+
```
|
|
101
|
+
/conectese rode o squad <nome-do-squad>
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
A equipe de IA inicia, pausando nos checkpoints onde os analistas jurídicos pedirão o input estratégico do Advogado (Human-in-the-Loop).
|
|
105
|
+
|
|
106
|
+
## Exemplos
|
|
107
|
+
|
|
108
|
+
```
|
|
109
|
+
/conectese
|
|
110
|
+
/conectese crie um Squad que receba sentenças de primeiro grau e levante possibilidades de embargo ou apelação
|
|
111
|
+
/conectese quero um Squad focado em Direito Tributário que analise autos de infração e sugira defesas
|
|
112
|
+
/conectese crie um Squad que higieniza dados LGPD de processos de Direito de Família e gera resumos seguros
|
|
113
|
+
/conectese roda o squad analise-tributaria
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
## Comandos
|
|
117
|
+
|
|
118
|
+
| Comando | O que faz |
|
|
119
|
+
|---------|-----------|
|
|
120
|
+
| `/conectese` | Abre o menu principal |
|
|
121
|
+
| `/conectese help` | Mostra todos os comandos |
|
|
122
|
+
| `/conectese create` | Cria um novo squad / equipe de IA |
|
|
123
|
+
| `/conectese run <nome>` | Analisa um caso no squad |
|
|
124
|
+
| `/conectese list` | Lista seus squads de IA |
|
|
125
|
+
| `/conectese edit <nome>` | Modifica as diretrizes de uma equipe |
|
|
126
|
+
| `/conectese skills` | Navega pelas habilidades jurídicas instaladas |
|
|
127
|
+
| `/conectese install <nome>` | Instala uma habilidade do catálogo |
|
|
128
|
+
| `/conectese uninstall <nome>` | Remove uma habilidade instalada |
|
|
129
|
+
|
|
130
|
+
## Custo de Tokens
|
|
131
|
+
|
|
132
|
+
O conectese é open source e pode ser usado gratuitamente como software de orquestração. O uso de LLMs locais mantém os dados sigilosos na sua máquina (usando Ollama, LM Studio, etc).
|
|
133
|
+
|
|
134
|
+
No uso de inteligência de fronteira (Claude Pro/Max, OpenAI API, Gemini Advanced):
|
|
135
|
+
- O repasse das peças anonimizadas aos LLMs tem custo de tokens de acordo com o tamanho do processo escaneado.
|
|
136
|
+
- Recomenda-se estritamente o uso dos agentes **LGPD-Anonymizers** primeiro, para que apenas os dados anonimizados trafeguem nas APIs.
|
|
137
|
+
|
|
138
|
+
## Sessões de Navegador e Privacidade
|
|
139
|
+
|
|
140
|
+
Caso um agente precise buscar atualizações de jurisprudência ativas, ele usa um navegador automatizado.
|
|
141
|
+
- **Isolamento de Sessão:** Cookies de jusbrasil/STJ são salvos apenas em `_conectese/_browser_profile/` que nunca sai da sua máquina ou vai para o Git.
|
|
142
|
+
|
|
143
|
+
## Sobre
|
|
144
|
+
|
|
145
|
+
O conectese é mantido como base de um projeto open source. Esta implementação específica foi transformada em um motor de inteligência e segurança jurídica projetado para advogados e escritórios de advocacia que precisam escalar o raciocínio forense humano com confiança.
|
|
146
|
+
|
|
147
|
+
Saiba mais em [conecte.se](https://conecte.se) ou entre em contato via carlos@conecte.se.
|
|
148
|
+
|
|
149
|
+
## Licença
|
|
150
|
+
|
|
151
|
+
MIT — use como quiser.
|
|
152
|
+
|
|
153
|
+
---
|
|
154
|
+
|
|
155
|
+
# conectese (English)
|
|
156
|
+
|
|
157
|
+
Create AI squads specialized in the Legal environment — right from your IDE.
|
|
158
|
+
|
|
159
|
+
conectese is a multi-agent orchestration framework geared entirely towards **Lawyers, Law Firms, and Corporate Legal Departments**. Describe your case needs in plain language, and conectese creates a team of AI legal analysts and agents who work together to enhance procedural analysis, guarantee privacy (GDPR/LGPD), and support your decision-making.
|
|
160
|
+
|
|
161
|
+
## Learn more
|
|
162
|
+
|
|
163
|
+
[conecte.se](https://conecte.se) - **Contact:** carlos@conecte.se
|
|
164
|
+
|
|
165
|
+
## What is a Legal Squad?
|
|
166
|
+
|
|
167
|
+
A legal squad is a team of AI agents that collaborate to dissect a lawsuit, draft legal documents, or anonymize evidence. They run in a pipeline with checkpoints where the agent pauses and asks for the Head Human Lawyer's approval before proceeding with sensitive decisions.
|
|
168
|
+
|
|
169
|
+
Example:
|
|
170
|
+
|
|
171
|
+
- **Data Extractor** parses raw PDF filings
|
|
172
|
+
- **LGPD Anonymizer** redacts PII and sanitizes the facts
|
|
173
|
+
- **Legal Analyst** maps out the procedural landscape
|
|
174
|
+
- **Specialists Routing** channels tasks to domain-specific AIs (Tax, Civil, Criminal)
|
|
175
|
+
- **Legal Draftsperson** sews arguments into a final brief
|
|
176
|
+
- **Data Restorer** reinjects real names maintaining confidentiality
|
|
177
|
+
|
|
178
|
+
## Installation
|
|
179
|
+
|
|
180
|
+
**Prerequisite:** Node.js 20+
|
|
181
|
+
|
|
182
|
+
```bash
|
|
183
|
+
npx conectese init
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
To update an existing installation:
|
|
187
|
+
|
|
188
|
+
```bash
|
|
189
|
+
npx conectese update
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
## Supported IDEs
|
|
193
|
+
|
|
194
|
+
| IDE | Status |
|
|
195
|
+
|-----|--------|
|
|
196
|
+
| Claude Code | Available |
|
|
197
|
+
| Cursor | Available |
|
|
198
|
+
| VS Code + Copilot | Available |
|
|
199
|
+
| Codex (OpenAI) | Available |
|
|
200
|
+
| Open Code | Available |
|
|
201
|
+
| Antigravity | Available |
|
|
202
|
+
|
|
203
|
+
## Virtual Office
|
|
204
|
+
|
|
205
|
+
The Virtual Office is a 2D interface showing your AI legal team working in real time.
|
|
206
|
+
|
|
207
|
+
**Step 1 — Generate the dashboard** (in your IDE):
|
|
208
|
+
```
|
|
209
|
+
/conectese dashboard
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
**Step 2 — Serve it locally** (in terminal):
|
|
213
|
+
```bash
|
|
214
|
+
npx serve squads/<squad-name>/dashboard
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
**Step 3 —** Open `http://localhost:3000` in your browser.
|
|
218
|
+
|
|
219
|
+
## Creating your Squad
|
|
220
|
+
|
|
221
|
+
Describe what you need:
|
|
222
|
+
|
|
223
|
+
```
|
|
224
|
+
/conectese create "A squad that reviews M&A contracts and flags liabilities"
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
The **Architect** asks a few questions, designs the legal squad, and sets everything up safely. You approve the design before execution.
|
|
228
|
+
|
|
229
|
+
## Running a Squad
|
|
230
|
+
|
|
231
|
+
```
|
|
232
|
+
/conectese run <squad-name>
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
The squad runs automatically, pausing at critical junctures if legal interpretation is ambiguous to ask for your strategic guidance.
|
|
236
|
+
|
|
237
|
+
## Examples
|
|
238
|
+
|
|
239
|
+
```
|
|
240
|
+
/conectese create "Squad that reads 1st degree sentences and draft grounds for appeal"
|
|
241
|
+
/conectese create "Squad that sanitizes GDPR/LGPD data on family court proceedings"
|
|
242
|
+
/conectese create "Squad that audits labor contracts against current regulations"
|
|
243
|
+
```
|
|
244
|
+
|
|
245
|
+
## Token Cost
|
|
246
|
+
|
|
247
|
+
conectese itself is completely free and open source. For utmost confidentiality, you can use OpenCode with local offline LLMs.
|
|
248
|
+
When leveraging frontier models (Claude, OpenAI):
|
|
249
|
+
- Passing massive case dossiers will incur higher token costs per run.
|
|
250
|
+
- Using the **Anonymizer** agent beforehand ensures you are not passing sensitive PII into external APIs inadvertently.
|
|
251
|
+
|
|
252
|
+
## Browser Sessions & Privacy
|
|
253
|
+
|
|
254
|
+
When fetching active jurisprudence, conectese can perform browser actions locally.
|
|
255
|
+
- **Persistent cookies:** stored completely locally in `_conectese/_browser_profile/`.
|
|
256
|
+
|
|
257
|
+
## About
|
|
258
|
+
|
|
259
|
+
This implementation of conectese has been heavily customized to serve as a legal intelligence engine, designed for law firms needing to scale their forensic rationale confidently and safely.
|
|
260
|
+
|
|
261
|
+
Learn more at [conecte.se](https://conecte.se) or reach out at carlos@conecte.se.
|
|
262
|
+
|
|
263
|
+
## License
|
|
264
|
+
|
|
265
|
+
MIT — use it however you want.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
0.1.0
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
# SHARED — applies to ALL IDEs. Do not add IDE-specific logic here.
|
|
2
|
+
# For IDE-specific behavior: templates/ide-templates/{ide}/ only.
|
|
3
|
+
agent:
|
|
4
|
+
webskip: false
|
|
5
|
+
metadata:
|
|
6
|
+
id: "_conectese/core/architect"
|
|
7
|
+
name: Arquiteto
|
|
8
|
+
title: Squad Architect
|
|
9
|
+
icon: 🧠
|
|
10
|
+
squad: core
|
|
11
|
+
hasSidecar: false
|
|
12
|
+
|
|
13
|
+
persona:
|
|
14
|
+
role: >
|
|
15
|
+
Squad Architecture Specialist who designs multi-agent teams and
|
|
16
|
+
automated pipelines. Translates business needs into optimized
|
|
17
|
+
squad configurations with the right agents, workflows, and skills.
|
|
18
|
+
identity: >
|
|
19
|
+
Strategic systems thinker who sees organizations as interconnected
|
|
20
|
+
workflows. Has an instinct for breaking complex processes into
|
|
21
|
+
clear agent responsibilities. Patient with non-technical users,
|
|
22
|
+
always explains decisions in plain language. Believes the best
|
|
23
|
+
squad is the simplest one that gets the job done.
|
|
24
|
+
communication_style: >
|
|
25
|
+
Clear and structured. Uses numbered lists and visual separators
|
|
26
|
+
to organize information. Asks one question at a time. Confirms
|
|
27
|
+
understanding before proceeding. Speaks naturally — never instructs
|
|
28
|
+
the user like a form ("reply with a number", "type yes to confirm").
|
|
29
|
+
Just presents options and lets the user respond however they want.
|
|
30
|
+
principles:
|
|
31
|
+
- YAGNI — never create agents that aren't strictly necessary
|
|
32
|
+
- Each agent must have exactly one clear responsibility
|
|
33
|
+
- Pipelines must have checkpoints at every user decision point
|
|
34
|
+
- Default to the simplest pipeline that achieves the goal
|
|
35
|
+
- "Path safety: Never use Bash mkdir to create directories. Always use the Write tool to create files — it creates parent directories automatically and avoids Windows/Bash path separator conflicts (backslash vs forward slash)."
|
|
36
|
+
|
|
37
|
+
discussion: true
|
|
38
|
+
|
|
39
|
+
menu:
|
|
40
|
+
- trigger: CS or fuzzy match on create-squad or create
|
|
41
|
+
description: "[CS] Create a new squad from natural language description"
|
|
42
|
+
action: create-squad
|
|
43
|
+
|
|
44
|
+
- trigger: ES or fuzzy match on edit-squad or edit or modify
|
|
45
|
+
description: "[ES] Edit an existing squad"
|
|
46
|
+
action: edit-squad
|
|
47
|
+
|
|
48
|
+
- trigger: LS or fuzzy match on list-squads or list or my squads
|
|
49
|
+
description: "[LS] List all squads"
|
|
50
|
+
action: list-squads
|
|
51
|
+
|
|
52
|
+
- trigger: DS or fuzzy match on delete-squad or delete or remove
|
|
53
|
+
description: "[DS] Delete a squad"
|
|
54
|
+
action: delete-squad
|
|
55
|
+
|
|
56
|
+
workflows:
|
|
57
|
+
create-squad: |
|
|
58
|
+
## Create Squad
|
|
59
|
+
|
|
60
|
+
The create flow is now handled by the phased orchestration system.
|
|
61
|
+
See the SKILL.md entry point for the full phased flow:
|
|
62
|
+
Discovery → Investigation → Design → Template Selection (optional) → Build
|
|
63
|
+
|
|
64
|
+
Each phase is a separate prompt in `_conectese/core/prompts/`:
|
|
65
|
+
- `discovery.prompt.md` — Phase 1: Intelligent wizard
|
|
66
|
+
- `sherlock-*.md` — Phase 2: Investigation (optional)
|
|
67
|
+
- `design.prompt.md` — Phase 3: Squad architecture (includes optional Phase G.5: Template Selection)
|
|
68
|
+
- `build.prompt.md` — Phase 4: File generation + validation
|
|
69
|
+
|
|
70
|
+
The SKILL.md orchestrator dispatches each phase as a subagent.
|
|
71
|
+
|
|
72
|
+
edit-squad: |
|
|
73
|
+
## Edit Squad Workflow
|
|
74
|
+
|
|
75
|
+
1. Ask which squad to edit (list available squads if not specified).
|
|
76
|
+
If only 1 squad exists, add "Cancel" as a second option. If 0 squads, inform user directly.
|
|
77
|
+
2. Read the squad's squad.yaml to understand current structure
|
|
78
|
+
3. Ask what changes the user wants
|
|
79
|
+
4. **If the user asks to edit/define/change the visual template or identity of a design agent:**
|
|
80
|
+
- Read and follow `skills/template-designer/SKILL.md`
|
|
81
|
+
- If `template-reference.html` and `visual-identity.md` already exist in the squad's `pipeline/data/`, load them as the starting point
|
|
82
|
+
5. Modify the relevant files (agent .md files, pipeline steps, squad.yaml)
|
|
83
|
+
6. Present summary of changes
|
|
84
|
+
7. Confirm with user
|
|
85
|
+
|
|
86
|
+
list-squads: |
|
|
87
|
+
## List Squads Workflow
|
|
88
|
+
|
|
89
|
+
1. Read all directories in squads/
|
|
90
|
+
2. For each, read squad.yaml to get name, description, icon, agent count
|
|
91
|
+
3. Present as a formatted list:
|
|
92
|
+
```
|
|
93
|
+
Your Squads:
|
|
94
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
95
|
+
📋 my-squad
|
|
96
|
+
My Squad Description
|
|
97
|
+
3 agents | Last run: never
|
|
98
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
99
|
+
```
|
|
100
|
+
4. If no squads exist, suggest creating one
|
|
101
|
+
|
|
102
|
+
delete-squad: |
|
|
103
|
+
## Delete Squad Workflow
|
|
104
|
+
|
|
105
|
+
1. Ask which squad to delete (list available if not specified).
|
|
106
|
+
If only 1 squad exists, add "Cancel" as a second option. If 0 squads, inform user directly.
|
|
107
|
+
2. Show squad details (name, agents, output count)
|
|
108
|
+
3. Confirm deletion with explicit "Are you sure?" presented as a numbered list (1. Yes, delete / 2. No, cancel)
|
|
109
|
+
4. If confirmed, delete the entire squads/{code}/ directory
|
|
110
|
+
5. Confirm deletion
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
# Best Practices Catalog
|
|
2
|
+
# The Architect reads this file to discover which best-practices are available.
|
|
3
|
+
# Read the full file only for best-practices relevant to the squad being created.
|
|
4
|
+
|
|
5
|
+
catalog:
|
|
6
|
+
# === Discipline Best Practices ===
|
|
7
|
+
- id: copywriting
|
|
8
|
+
name: "Copywriting & Persuasive Writing"
|
|
9
|
+
whenToUse: "Creating agents that write persuasive copy, hooks, CTAs, social media captions, sales content, or viral angles."
|
|
10
|
+
file: copywriting.md
|
|
11
|
+
|
|
12
|
+
- id: researching
|
|
13
|
+
name: "Research & Data Collection"
|
|
14
|
+
whenToUse: "Creating agents that research topics, collect data from the web, verify facts, or produce structured research briefs."
|
|
15
|
+
file: researching.md
|
|
16
|
+
|
|
17
|
+
- id: review
|
|
18
|
+
name: "Content Review & Quality Control"
|
|
19
|
+
whenToUse: "Creating agents that evaluate content quality, score against criteria, or produce structured APPROVE/REJECT verdicts."
|
|
20
|
+
file: review.md
|
|
21
|
+
|
|
22
|
+
- id: image-design
|
|
23
|
+
name: "Visual Design & Image Creation"
|
|
24
|
+
whenToUse: "Creating agents that design graphics, carousel slides, social media visuals, or HTML/CSS templates for rendering."
|
|
25
|
+
file: image-design.md
|
|
26
|
+
|
|
27
|
+
- id: social-networks-publishing
|
|
28
|
+
name: "Social Networks Publishing"
|
|
29
|
+
whenToUse: "Creating agents that publish content to Instagram, LinkedIn, X/Twitter, YouTube, or other social platforms."
|
|
30
|
+
file: social-networks-publishing.md
|
|
31
|
+
|
|
32
|
+
- id: strategist
|
|
33
|
+
name: "Strategy & Editorial Planning"
|
|
34
|
+
whenToUse: "Creating agents that plan content strategy, editorial calendars, competitive positioning, or audience segmentation."
|
|
35
|
+
file: strategist.md
|
|
36
|
+
|
|
37
|
+
- id: technical-writing
|
|
38
|
+
name: "Technical & Long-Form Writing"
|
|
39
|
+
whenToUse: "Creating agents that write articles, blog posts, documentation, tutorials, white papers, or educational content."
|
|
40
|
+
file: technical-writing.md
|
|
41
|
+
|
|
42
|
+
- id: data-analysis
|
|
43
|
+
name: "Data Analysis & Interpretation"
|
|
44
|
+
whenToUse: "Creating agents that interpret metrics, extract insights, benchmark performance, or produce analytical reports."
|
|
45
|
+
file: data-analysis.md
|
|
46
|
+
|
|
47
|
+
# === Platform Best Practices ===
|
|
48
|
+
- id: instagram-feed
|
|
49
|
+
name: "Instagram Feed & Carousels"
|
|
50
|
+
whenToUse: "Creating agents that produce Instagram feed posts, carousels, or static image content for Instagram."
|
|
51
|
+
file: instagram-feed.md
|
|
52
|
+
|
|
53
|
+
- id: instagram-reels
|
|
54
|
+
name: "Instagram Reels"
|
|
55
|
+
whenToUse: "Creating agents that produce Instagram Reels or short-form vertical video for Instagram."
|
|
56
|
+
file: instagram-reels.md
|
|
57
|
+
|
|
58
|
+
- id: instagram-stories
|
|
59
|
+
name: "Instagram Stories"
|
|
60
|
+
whenToUse: "Creating agents that produce Instagram Stories or ephemeral 24-hour content."
|
|
61
|
+
file: instagram-stories.md
|
|
62
|
+
|
|
63
|
+
- id: linkedin-post
|
|
64
|
+
name: "LinkedIn Post"
|
|
65
|
+
whenToUse: "Creating agents that produce LinkedIn posts, text updates, or document carousels for LinkedIn."
|
|
66
|
+
file: linkedin-post.md
|
|
67
|
+
|
|
68
|
+
- id: linkedin-article
|
|
69
|
+
name: "LinkedIn Article"
|
|
70
|
+
whenToUse: "Creating agents that produce LinkedIn articles or long-form professional content."
|
|
71
|
+
file: linkedin-article.md
|
|
72
|
+
|
|
73
|
+
- id: twitter-post
|
|
74
|
+
name: "Twitter/X Post"
|
|
75
|
+
whenToUse: "Creating agents that produce tweets, quote tweets, or single posts for X/Twitter."
|
|
76
|
+
file: twitter-post.md
|
|
77
|
+
|
|
78
|
+
- id: twitter-thread
|
|
79
|
+
name: "Twitter/X Thread"
|
|
80
|
+
whenToUse: "Creating agents that produce Twitter/X threads or multi-tweet narratives."
|
|
81
|
+
file: twitter-thread.md
|
|
82
|
+
|
|
83
|
+
- id: youtube-script
|
|
84
|
+
name: "YouTube Video Script"
|
|
85
|
+
whenToUse: "Creating agents that produce YouTube video scripts or long-form video content."
|
|
86
|
+
file: youtube-script.md
|
|
87
|
+
|
|
88
|
+
- id: youtube-shorts
|
|
89
|
+
name: "YouTube Shorts"
|
|
90
|
+
whenToUse: "Creating agents that produce YouTube Shorts or short-form vertical video for YouTube."
|
|
91
|
+
file: youtube-shorts.md
|
|
92
|
+
|
|
93
|
+
- id: email-newsletter
|
|
94
|
+
name: "Email Newsletter"
|
|
95
|
+
whenToUse: "Creating agents that produce email newsletters or recurring subscriber content."
|
|
96
|
+
file: email-newsletter.md
|
|
97
|
+
|
|
98
|
+
- id: email-sales
|
|
99
|
+
name: "Sales Email"
|
|
100
|
+
whenToUse: "Creating agents that produce sales emails, cold outreach, or direct response email campaigns."
|
|
101
|
+
file: email-sales.md
|
|
102
|
+
|
|
103
|
+
- id: blog-post
|
|
104
|
+
name: "Blog Post"
|
|
105
|
+
whenToUse: "Creating agents that produce blog posts, articles, or long-form content marketing."
|
|
106
|
+
file: blog-post.md
|
|
107
|
+
|
|
108
|
+
- id: blog-seo
|
|
109
|
+
name: "Blog Post (SEO)"
|
|
110
|
+
whenToUse: "Creating agents that produce SEO-optimized blog posts or search-targeted content."
|
|
111
|
+
file: blog-seo.md
|
|
112
|
+
|
|
113
|
+
- id: whatsapp-broadcast
|
|
114
|
+
name: "WhatsApp Broadcast"
|
|
115
|
+
whenToUse: "Creating agents that produce WhatsApp broadcast messages or conversational marketing content."
|
|
116
|
+
file: whatsapp-broadcast.md
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "Blog Post"
|
|
3
|
+
platform: "blog"
|
|
4
|
+
content_type: "post"
|
|
5
|
+
description: "Long-form blog posts optimized for readability, engagement, and clear value delivery with structured subheadings"
|
|
6
|
+
whenToUse: |
|
|
7
|
+
Creating agents that produce blog posts, articles, or long-form content marketing.
|
|
8
|
+
constraints:
|
|
9
|
+
optimal_word_count: "1500-2500"
|
|
10
|
+
title_max_chars: 70
|
|
11
|
+
meta_description_chars: 160
|
|
12
|
+
subheading_frequency: "every 200-300 words"
|
|
13
|
+
version: "1.0.0"
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## Platform Rules
|
|
17
|
+
|
|
18
|
+
- Average time on page is the strongest engagement signal. Blog posts that keep readers scrolling for 3-5 minutes outperform those that get abandoned in the first 30 seconds. Structure and readability directly determine this metric.
|
|
19
|
+
- Posts between 1,500-2,500 words hit the optimal balance of depth and retention. Below 800 words, content is perceived as thin and struggles to rank. Above 3,000 words, completion rates drop unless the topic demands exhaustive coverage.
|
|
20
|
+
- Mobile readability is non-negotiable. Over 60% of blog traffic comes from mobile devices. Long paragraphs, wide images, and dense formatting that work on desktop become unreadable walls on small screens.
|
|
21
|
+
- Subheadings serve as a scannable table of contents. Studies show 73% of readers scan blog posts rather than reading word by word. If the subheadings alone do not convey the article's value, the structure needs reworking.
|
|
22
|
+
- Internal linking keeps readers on site and distributes page authority. Posts with 3+ internal links to related content have higher average session duration and lower bounce rates.
|
|
23
|
+
- External links to authoritative sources (research, industry leaders, official documentation) increase credibility and can positively impact search ranking when linking to genuinely relevant resources.
|
|
24
|
+
- Publishing consistency builds audience expectation and return visits. A regular cadence (1-2 posts per week) outperforms sporadic publishing bursts followed by silence.
|
|
25
|
+
- Visual breaks every 300 words prevent fatigue: images, callout boxes, bullet lists, or blockquotes. Unbroken text spanning more than 300 words causes readers to disengage.
|
|
26
|
+
|
|
27
|
+
## Content Structure
|
|
28
|
+
|
|
29
|
+
### Blog Post Architecture
|
|
30
|
+
|
|
31
|
+
1. **Title** — Under 70 characters. Clearly communicates what the reader will learn or gain. Front-load the key topic. Avoid vague or overly clever titles that sacrifice clarity for creativity.
|
|
32
|
+
2. **Meta description** — 150-160 characters. Summarizes the post's value proposition in one sentence. This appears in search results and social shares — it is a second headline.
|
|
33
|
+
3. **Intro hook (2-3 sentences)** — Open with a surprising stat, bold claim, relatable problem, or a story that places the reader in a scenario. Then state exactly what the post will deliver.
|
|
34
|
+
4. **Body sections (3-6 H2 sections)** — Each section covers one major point with its own H2 subheading. Sections are 200-300 words each with H3 sub-sections for deeper breakdowns.
|
|
35
|
+
5. **Conclusion (3-5 sentences)** — Summarize the key takeaways in 1-2 sentences, then deliver a clear CTA: read a related post, download a resource, leave a comment, or try a specific action.
|
|
36
|
+
|
|
37
|
+
### Section-Level Structure
|
|
38
|
+
|
|
39
|
+
- **H2 subheading** — Descriptive, scannable, and self-contained. A reader should understand the section's value from the heading alone.
|
|
40
|
+
- **Opening sentence** — State the section's key point immediately. Do not build up to the insight.
|
|
41
|
+
- **Supporting content** — Evidence, examples, data, or step-by-step instructions. Use bullet points for lists of 3+ items.
|
|
42
|
+
- **Transition** — Final sentence bridges to the next section or reinforces the section's takeaway.
|
|
43
|
+
|
|
44
|
+
### Effective Post Formats
|
|
45
|
+
|
|
46
|
+
- **How-to guide**: "How to [achieve X]: A Step-by-Step Guide"
|
|
47
|
+
- **Listicle**: "7 [Things] That [Outcome] (and How to Use Them)"
|
|
48
|
+
- **Problem/Solution**: "Why [Problem Exists] and What to Do About It"
|
|
49
|
+
- **Lessons learned**: "What I Learned From [Experience]: [N] Key Takeaways"
|
|
50
|
+
- **Comparison**: "[Option A] vs. [Option B]: Which Is Right for [Audience]?"
|
|
51
|
+
|
|
52
|
+
## Writing Guidelines
|
|
53
|
+
|
|
54
|
+
- **Hook the reader in the first 2-3 sentences or lose them.** Open with a stat, question, bold claim, or relatable scenario. Never start with a dictionary definition or generic background. "Content marketing is important" loses readers. "87% of blog posts get zero organic traffic" keeps them.
|
|
55
|
+
- Write in short paragraphs: 3-4 lines maximum on desktop, which translates to 2-3 lines on mobile. Single-sentence paragraphs are powerful for emphasis.
|
|
56
|
+
- Bold key phrases and takeaways within paragraphs so scanners can extract value without reading every word.
|
|
57
|
+
- Use bullet points and numbered lists for any sequence of 3+ items. Lists are easier to scan than inline comma-separated items.
|
|
58
|
+
- Subheadings every 200-300 words. Each H2 should read like a mini-headline that a scanner would click on if presented independently.
|
|
59
|
+
- Write in second person ("you") to create direct connection with the reader. First person ("I/we") works for personal stories and experience-based authority.
|
|
60
|
+
- Include at least one visual break (image, callout box, blockquote, or list) every 300 words. Continuous text blocks cause reader fatigue and increase bounce rate.
|
|
61
|
+
- End with a specific, actionable CTA. "What do you think?" is weak. "Try implementing [technique] this week and comment below with your results" is strong.
|
|
62
|
+
- Include 3+ internal links to related content on your site and 2+ external links to authoritative sources. Link naturally within context, not in a dumped list at the end.
|
|
63
|
+
- Write the title last, after you know what the post delivers. Front-load the most important keyword or concept in the first 40 characters.
|
|
64
|
+
|
|
65
|
+
## Output Format
|
|
66
|
+
|
|
67
|
+
```
|
|
68
|
+
=== TITLE ===
|
|
69
|
+
[Under 70 characters — clear, specific, keyword front-loaded]
|
|
70
|
+
|
|
71
|
+
=== META DESCRIPTION ===
|
|
72
|
+
[150-160 characters — summarizes the post's value proposition in one sentence]
|
|
73
|
+
|
|
74
|
+
=== INTRO ===
|
|
75
|
+
[Hook — surprising stat, bold claim, relatable problem, or opening story. 1-2 sentences.]
|
|
76
|
+
|
|
77
|
+
[Promise — exactly what the reader will learn or gain from this post. 1 sentence.]
|
|
78
|
+
|
|
79
|
+
=== BODY ===
|
|
80
|
+
## [H2 Section 1 Title]
|
|
81
|
+
[200-300 words — one major point with evidence, examples, or steps. Include bullet points or visuals where appropriate.]
|
|
82
|
+
|
|
83
|
+
## [H2 Section 2 Title]
|
|
84
|
+
[200-300 words — one major point with evidence, examples, or steps.]
|
|
85
|
+
|
|
86
|
+
### [H3 Subsection if needed]
|
|
87
|
+
[Deeper breakdown of a specific aspect — 100-150 words.]
|
|
88
|
+
|
|
89
|
+
## [H2 Section 3 Title]
|
|
90
|
+
[200-300 words — one major point with evidence, examples, or steps.]
|
|
91
|
+
|
|
92
|
+
## [H2 Section 4 Title]
|
|
93
|
+
[200-300 words — one major point with evidence, examples, or steps.]
|
|
94
|
+
|
|
95
|
+
[Continue for 3-6 H2 sections total]
|
|
96
|
+
|
|
97
|
+
=== CONCLUSION ===
|
|
98
|
+
[Key takeaway summary — 1-2 sentences.]
|
|
99
|
+
|
|
100
|
+
[CTA — specific, actionable ask. 1-2 sentences.]
|
|
101
|
+
|
|
102
|
+
=== POST NOTES ===
|
|
103
|
+
Target word count: [1500-2500]
|
|
104
|
+
Internal links needed: [3+ with suggested anchor text]
|
|
105
|
+
External links needed: [2+ to authoritative sources]
|
|
106
|
+
Visual breaks: [List of suggested image/callout placements]
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
## Quality Criteria
|
|
110
|
+
|
|
111
|
+
- [ ] Title is under 70 characters and clearly communicates the post's value
|
|
112
|
+
- [ ] Meta description is 150-160 characters and serves as a compelling second headline
|
|
113
|
+
- [ ] Intro hooks the reader in the first 2-3 sentences with a stat, bold claim, or relatable scenario
|
|
114
|
+
- [ ] Post contains 3-6 H2 sections, each covering one major point
|
|
115
|
+
- [ ] Subheadings appear every 200-300 words and are scannable as a standalone outline
|
|
116
|
+
- [ ] Paragraphs are 3-4 lines maximum with key phrases bolded
|
|
117
|
+
- [ ] At least one visual break (image, callout, list, or blockquote) every 300 words
|
|
118
|
+
- [ ] 3+ internal links and 2+ external links are included with natural anchor text
|
|
119
|
+
- [ ] Total word count is between 1,500-2,500 words
|
|
120
|
+
- [ ] Conclusion ends with a specific, actionable CTA (not generic "What do you think?")
|
|
121
|
+
|
|
122
|
+
## Anti-Patterns
|
|
123
|
+
|
|
124
|
+
- **Walls of text** — Paragraphs exceeding 5-6 lines on desktop become impenetrable on mobile. Readers bounce rather than parse dense blocks. Short paragraphs and visual breaks are not optional — they are structural requirements for retention.
|
|
125
|
+
- **No subheadings** — A 2,000-word post without H2/H3 subheadings is functionally a wall of text. Scanners (73% of readers) cannot extract value and leave. Subheadings serve as both navigation and content promises.
|
|
126
|
+
- **Clickbait titles that do not deliver** — "This One Trick Changed Everything" followed by generic advice destroys trust. The reader feels deceived, bounces quickly, and never returns. High bounce rates also signal low quality to search engines.
|
|
127
|
+
- **Thin content under 800 words** — Short posts struggle to provide sufficient depth, rank poorly for competitive keywords, and signal low effort. If the topic can be covered in 500 words, it may be better as a social post than a blog article.
|
|
128
|
+
- **No conclusion or CTA** — Posts that simply stop after the last body section feel incomplete. The reader has invested 3-5 minutes and receives no guidance on what to do next. Every post needs a clear ending and next step.
|
|
129
|
+
- **Dictionary definition openings** — Starting with "[Topic] is defined as..." is the most common sign of filler content. It adds no value, wastes the most important real estate in the post, and signals that the writer has nothing original to say.
|
|
130
|
+
- **Link dumping** — Placing all internal and external links in a list at the bottom of the post rather than weaving them naturally into the content. Contextual links are clicked more and provide more value to the reader.
|
|
131
|
+
- **No visual breaks** — Continuous text for 500+ words without an image, list, callout, or blockquote causes reading fatigue. Even well-written content gets abandoned when it is visually monotonous.
|
|
132
|
+
- **Writing for search engines instead of humans** — Unnaturally forcing keywords into every sentence makes content awkward and unpleasant to read. Write for clarity first; optimize for search second.
|