@robbiesrobotics/alice-agents 1.5.8 → 1.5.9
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 +5 -2
- package/package.json +1 -1
- package/templates/skills/acculynx/SKILL.md +183 -0
- package/templates/skills/acculynx/references/analysis_template.py +116 -0
- package/templates/skills/acculynx/references/dashboard_page.tsx +641 -0
- package/templates/skills/claude-code/SKILL.md +2 -2
- package/templates/skills/coding-agent/SKILL.md +68 -0
- package/templates/skills/crawl4ai/SKILL.md +119 -0
- package/templates/skills/crawl4ai/scripts/crwl +3 -0
- package/templates/workspaces/accuscope/AGENTS.md +38 -0
- package/templates/workspaces/accuscope/FEEDBACK.md +27 -0
- package/templates/workspaces/accuscope/HEARTBEAT.md +26 -0
- package/templates/workspaces/accuscope/IDENTITY.md +48 -0
- package/templates/workspaces/accuscope/LEARNINGS.md +46 -0
- package/templates/workspaces/accuscope/MEMORY.md +47 -0
- package/templates/workspaces/accuscope/PLAYBOOK.md +65 -0
- package/templates/workspaces/accuscope/SOUL.md +40 -0
- package/templates/workspaces/accuscope/TOOLS.md +63 -0
- package/templates/workspaces/accuscope/USER.md +39 -0
- package/templates/workspaces/aiden/AGENTS.md +52 -0
- package/templates/workspaces/aiden/FEEDBACK.md +12 -0
- package/templates/workspaces/aiden/HEARTBEAT.md +9 -0
- package/templates/workspaces/aiden/IDENTITY.md +6 -0
- package/templates/workspaces/aiden/LEARNINGS.md +6 -0
- package/templates/workspaces/aiden/MEMORY.md +22 -0
- package/templates/workspaces/aiden/PLAYBOOK.md +16 -0
- package/templates/workspaces/aiden/SOUL.md +1 -1
- package/templates/workspaces/aiden/USER.md +17 -0
- package/templates/workspaces/alex/AGENTS.md +52 -0
- package/templates/workspaces/alex/FEEDBACK.md +11 -0
- package/templates/workspaces/alex/HEARTBEAT.md +9 -0
- package/templates/workspaces/alex/IDENTITY.md +6 -0
- package/templates/workspaces/alex/LEARNINGS.md +5 -0
- package/templates/workspaces/alex/MEMORY.md +22 -0
- package/templates/workspaces/alex/PLAYBOOK.md +16 -0
- package/templates/workspaces/alex/SOUL.md +1 -1
- package/templates/workspaces/alex/USER.md +13 -0
- package/templates/workspaces/aria/AGENTS.md +18 -0
- package/templates/workspaces/aria/FEEDBACK.md +12 -0
- package/templates/workspaces/aria/HEARTBEAT.md +32 -0
- package/templates/workspaces/aria/IDENTITY.md +12 -0
- package/templates/workspaces/aria/LEARNINGS.md +31 -0
- package/templates/workspaces/aria/MEMORY.md +29 -0
- package/templates/workspaces/aria/PLAYBOOK.md +71 -0
- package/templates/workspaces/aria/SOUL.md +57 -0
- package/templates/workspaces/aria/TOOLS.md +47 -0
- package/templates/workspaces/aria/USER.md +18 -0
- package/templates/workspaces/audrey/AGENTS.md +59 -0
- package/templates/workspaces/audrey/FEEDBACK.md +11 -0
- package/templates/workspaces/audrey/HEARTBEAT.md +9 -0
- package/templates/workspaces/audrey/IDENTITY.md +6 -0
- package/templates/workspaces/audrey/LEARNINGS.md +5 -0
- package/templates/workspaces/audrey/MEMORY.md +22 -0
- package/templates/workspaces/audrey/PLAYBOOK.md +16 -0
- package/templates/workspaces/audrey/SOUL.md +1 -1
- package/templates/workspaces/audrey/TOOLS.md +15 -0
- package/templates/workspaces/audrey/USER.md +13 -0
- package/templates/workspaces/avery/AGENTS.md +52 -0
- package/templates/workspaces/avery/FEEDBACK.md +12 -0
- package/templates/workspaces/avery/HEARTBEAT.md +5 -0
- package/templates/workspaces/avery/IDENTITY.md +6 -0
- package/templates/workspaces/avery/LEARNINGS.md +6 -0
- package/templates/workspaces/avery/MEMORY.md +22 -0
- package/templates/workspaces/avery/PLAYBOOK.md +16 -0
- package/templates/workspaces/avery/SOUL.md +1 -1
- package/templates/workspaces/avery/USER.md +17 -0
- package/templates/workspaces/avery/skills/claude-code/SKILL.md +38 -0
- package/templates/workspaces/avery/skills/claude-code/claude_code +55 -0
- package/templates/workspaces/caleb/AGENTS.md +52 -0
- package/templates/workspaces/caleb/FEEDBACK.md +11 -0
- package/templates/workspaces/caleb/HEARTBEAT.md +9 -0
- package/templates/workspaces/caleb/IDENTITY.md +6 -0
- package/templates/workspaces/caleb/LEARNINGS.md +5 -0
- package/templates/workspaces/caleb/MEMORY.md +22 -0
- package/templates/workspaces/caleb/PLAYBOOK.md +16 -0
- package/templates/workspaces/caleb/SOUL.md +1 -1
- package/templates/workspaces/caleb/TOOLS.md +30 -0
- package/templates/workspaces/caleb/USER.md +13 -0
- package/templates/workspaces/clara/AGENTS.md +59 -0
- package/templates/workspaces/clara/FEEDBACK.md +12 -0
- package/templates/workspaces/clara/HEARTBEAT.md +5 -0
- package/templates/workspaces/clara/IDENTITY.md +6 -0
- package/templates/workspaces/clara/LEARNINGS.md +6 -0
- package/templates/workspaces/clara/MEMORY.md +22 -0
- package/templates/workspaces/clara/PLAYBOOK.md +16 -0
- package/templates/workspaces/clara/SOUL.md +1 -1
- package/templates/workspaces/clara/TOOLS.md +15 -0
- package/templates/workspaces/clara/USER.md +17 -0
- package/templates/workspaces/daphne/AGENTS.md +59 -0
- package/templates/workspaces/daphne/FEEDBACK.md +18 -0
- package/templates/workspaces/daphne/HEARTBEAT.md +5 -0
- package/templates/workspaces/daphne/IDENTITY.md +6 -0
- package/templates/workspaces/daphne/LEARNINGS.md +6 -0
- package/templates/workspaces/daphne/MEMORY.md +22 -0
- package/templates/workspaces/daphne/PLAYBOOK.md +48 -0
- package/templates/workspaces/daphne/SOUL.md +1 -1
- package/templates/workspaces/daphne/TOOLS.md +15 -0
- package/templates/workspaces/daphne/USER.md +17 -0
- package/templates/workspaces/darius/AGENTS.md +52 -0
- package/templates/workspaces/darius/FEEDBACK.md +12 -0
- package/templates/workspaces/darius/HEARTBEAT.md +5 -0
- package/templates/workspaces/darius/IDENTITY.md +6 -0
- package/templates/workspaces/darius/LEARNINGS.md +6 -0
- package/templates/workspaces/darius/MEMORY.md +22 -0
- package/templates/workspaces/darius/PLAYBOOK.md +16 -0
- package/templates/workspaces/darius/SOUL.md +1 -1
- package/templates/workspaces/darius/USER.md +17 -0
- package/templates/workspaces/darius/skills/claude-code/SKILL.md +38 -0
- package/templates/workspaces/darius/skills/claude-code/claude_code +55 -0
- package/templates/workspaces/devon/AGENTS.md +52 -0
- package/templates/workspaces/devon/FEEDBACK.md +11 -0
- package/templates/workspaces/devon/HEARTBEAT.md +5 -0
- package/templates/workspaces/devon/IDENTITY.md +6 -0
- package/templates/workspaces/devon/LEARNINGS.md +11 -0
- package/templates/workspaces/devon/MEMORY.md +22 -0
- package/templates/workspaces/devon/PLAYBOOK.md +16 -0
- package/templates/workspaces/devon/SOUL.md +1 -1
- package/templates/workspaces/devon/USER.md +13 -0
- package/templates/workspaces/devon/check_github.py +12 -0
- package/templates/workspaces/devon/check_mc_env.py +30 -0
- package/templates/workspaces/devon/check_sb.py +34 -0
- package/templates/workspaces/devon/check_vercel.py +12 -0
- package/templates/workspaces/devon/get_mc_files.py +17 -0
- package/templates/workspaces/devon/write_heartbeat.py +67 -0
- package/templates/workspaces/dylan/.env.example +33 -0
- package/templates/workspaces/dylan/00007_verify_licenses_table.sql +100 -0
- package/templates/workspaces/dylan/AGENTS.md +52 -0
- package/templates/workspaces/dylan/FEEDBACK.md +28 -0
- package/templates/workspaces/dylan/HEARTBEAT.md +5 -0
- package/templates/workspaces/dylan/IDENTITY.md +6 -0
- package/templates/workspaces/dylan/LEARNINGS.md +70 -0
- package/templates/workspaces/dylan/MEMORY.md +22 -0
- package/templates/workspaces/dylan/PLAYBOOK.md +16 -0
- package/templates/workspaces/dylan/SOUL.md +1 -1
- package/templates/workspaces/dylan/STRIPE_PIPELINE.md +185 -0
- package/templates/workspaces/dylan/USER.md +17 -0
- package/templates/workspaces/dylan/n8n-stripe-welcome-workflow.json +123 -0
- package/templates/workspaces/dylan/skills/claude-code/SKILL.md +38 -0
- package/templates/workspaces/dylan/skills/claude-code/claude_code +55 -0
- package/templates/workspaces/dylan/stripe-webhook-handler.py +433 -0
- package/templates/workspaces/dylan/test_mock_webhook.py +103 -0
- package/templates/workspaces/elena/AGENTS.md +59 -0
- package/templates/workspaces/elena/FEEDBACK.md +11 -0
- package/templates/workspaces/elena/HEARTBEAT.md +9 -0
- package/templates/workspaces/elena/IDENTITY.md +6 -0
- package/templates/workspaces/elena/LEARNINGS.md +5 -0
- package/templates/workspaces/elena/MEMORY.md +22 -0
- package/templates/workspaces/elena/PLAYBOOK.md +16 -0
- package/templates/workspaces/elena/SOUL.md +1 -1
- package/templates/workspaces/elena/TOOLS.md +15 -0
- package/templates/workspaces/elena/USER.md +13 -0
- package/templates/workspaces/eva/AGENTS.md +59 -0
- package/templates/workspaces/eva/FEEDBACK.md +11 -0
- package/templates/workspaces/eva/HEARTBEAT.md +9 -0
- package/templates/workspaces/eva/IDENTITY.md +6 -0
- package/templates/workspaces/eva/LEARNINGS.md +5 -0
- package/templates/workspaces/eva/MEMORY.md +22 -0
- package/templates/workspaces/eva/PLAYBOOK.md +16 -0
- package/templates/workspaces/eva/SOUL.md +1 -1
- package/templates/workspaces/eva/TOOLS.md +15 -0
- package/templates/workspaces/eva/USER.md +13 -0
- package/templates/workspaces/felix/AGENTS.md +52 -0
- package/templates/workspaces/felix/FEEDBACK.md +11 -0
- package/templates/workspaces/felix/HEARTBEAT.md +5 -0
- package/templates/workspaces/felix/IDENTITY.md +6 -0
- package/templates/workspaces/felix/LEARNINGS.md +17 -0
- package/templates/workspaces/felix/MEMORY.md +22 -0
- package/templates/workspaces/felix/PLAYBOOK.md +16 -0
- package/templates/workspaces/felix/SOUL.md +1 -1
- package/templates/workspaces/felix/USER.md +13 -0
- package/templates/workspaces/felix/fidelia-psychology.html +1594 -0
- package/templates/workspaces/felix/task.txt +164 -0
- package/templates/workspaces/hannah/AGENTS.md +59 -0
- package/templates/workspaces/hannah/FEEDBACK.md +12 -0
- package/templates/workspaces/hannah/HEARTBEAT.md +5 -0
- package/templates/workspaces/hannah/IDENTITY.md +6 -0
- package/templates/workspaces/hannah/LEARNINGS.md +6 -0
- package/templates/workspaces/hannah/MEMORY.md +22 -0
- package/templates/workspaces/hannah/PLAYBOOK.md +16 -0
- package/templates/workspaces/hannah/SOUL.md +1 -1
- package/templates/workspaces/hannah/TOOLS.md +15 -0
- package/templates/workspaces/hannah/USER.md +17 -0
- package/templates/workspaces/isaac/AGENTS.md +52 -0
- package/templates/workspaces/isaac/FEEDBACK.md +12 -0
- package/templates/workspaces/isaac/HEARTBEAT.md +9 -0
- package/templates/workspaces/isaac/IDENTITY.md +6 -0
- package/templates/workspaces/isaac/LEARNINGS.md +6 -0
- package/templates/workspaces/isaac/MEMORY.md +22 -0
- package/templates/workspaces/isaac/PLAYBOOK.md +16 -0
- package/templates/workspaces/isaac/SOUL.md +1 -1
- package/templates/workspaces/isaac/USER.md +17 -0
- package/templates/workspaces/isaac/skills/claude-code/SKILL.md +38 -0
- package/templates/workspaces/isaac/skills/claude-code/claude_code +55 -0
- package/templates/workspaces/logan/AGENTS.md +59 -0
- package/templates/workspaces/logan/FEEDBACK.md +11 -0
- package/templates/workspaces/logan/HEARTBEAT.md +9 -0
- package/templates/workspaces/logan/IDENTITY.md +6 -0
- package/templates/workspaces/logan/LEARNINGS.md +5 -0
- package/templates/workspaces/logan/MEMORY.md +22 -0
- package/templates/workspaces/logan/PLAYBOOK.md +16 -0
- package/templates/workspaces/logan/SOUL.md +1 -1
- package/templates/workspaces/logan/TOOLS.md +15 -0
- package/templates/workspaces/logan/USER.md +13 -0
- package/templates/workspaces/maxxipro/AGENTS.md +29 -0
- package/templates/workspaces/maxxipro/FEEDBACK.md +19 -0
- package/templates/workspaces/maxxipro/HEARTBEAT.md +22 -0
- package/templates/workspaces/maxxipro/IDENTITY.md +35 -0
- package/templates/workspaces/maxxipro/KNOWLEDGE.md +335 -0
- package/templates/workspaces/maxxipro/LEARNINGS.md +47 -0
- package/templates/workspaces/maxxipro/MEMORY.md +60 -0
- package/templates/workspaces/maxxipro/OUTREACH_TEMPLATES.md +143 -0
- package/templates/workspaces/maxxipro/PLAYBOOK.md +81 -0
- package/templates/workspaces/maxxipro/SOUL.md +146 -0
- package/templates/workspaces/maxxipro/TOOLS.md +81 -0
- package/templates/workspaces/maxxipro/USER.md +40 -0
- package/templates/workspaces/morgan/AGENTS.md +59 -0
- package/templates/workspaces/morgan/FEEDBACK.md +19 -0
- package/templates/workspaces/morgan/HEARTBEAT.md +5 -0
- package/templates/workspaces/morgan/IDENTITY.md +6 -0
- package/templates/workspaces/morgan/LEARNINGS.md +18 -0
- package/templates/workspaces/morgan/MEMORY.md +22 -0
- package/templates/workspaces/morgan/PLAYBOOK.md +16 -0
- package/templates/workspaces/morgan/SOUL.md +1 -1
- package/templates/workspaces/morgan/TOOLS.md +15 -0
- package/templates/workspaces/morgan/USER.md +13 -0
- package/templates/workspaces/nadia/AGENTS.md +59 -0
- package/templates/workspaces/nadia/FEEDBACK.md +12 -0
- package/templates/workspaces/nadia/HEARTBEAT.md +5 -0
- package/templates/workspaces/nadia/IDENTITY.md +6 -0
- package/templates/workspaces/nadia/LEARNINGS.md +6 -0
- package/templates/workspaces/nadia/MEMORY.md +22 -0
- package/templates/workspaces/nadia/PLAYBOOK.md +16 -0
- package/templates/workspaces/nadia/SOUL.md +1 -1
- package/templates/workspaces/nadia/TOOLS.md +15 -0
- package/templates/workspaces/nadia/USER.md +13 -0
- package/templates/workspaces/nate/AGENTS.md +24 -0
- package/templates/workspaces/nate/FEEDBACK.md +12 -0
- package/templates/workspaces/nate/HEARTBEAT.md +33 -0
- package/templates/workspaces/nate/IDENTITY.md +15 -0
- package/templates/workspaces/nate/LEARNINGS.md +33 -0
- package/templates/workspaces/nate/MEMORY.md +39 -0
- package/templates/workspaces/nate/PLAYBOOK.md +160 -0
- package/templates/workspaces/nate/SOUL.md +50 -0
- package/templates/workspaces/nate/TOOLS.md +111 -0
- package/templates/workspaces/nate/USER.md +32 -0
- package/templates/workspaces/olivia/.last-openclaw-version +1 -0
- package/templates/workspaces/olivia/.npmrc.tmp +0 -0
- package/templates/workspaces/olivia/AGENTS.md +77 -0
- package/templates/workspaces/olivia/ALPHA_CODING_BENCHMARK.txt +148 -0
- package/templates/workspaces/olivia/ALPHA_MODEL_GUIDE.md +393 -0
- package/templates/workspaces/olivia/FEEDBACK.md +13 -0
- package/templates/workspaces/olivia/HEADTOHEAD_BENCHMARK.txt +1289 -0
- package/templates/workspaces/olivia/HEARTBEAT.md +267 -0
- package/templates/workspaces/olivia/IDENTITY.md +6 -0
- package/templates/workspaces/olivia/LEARNINGS.md +708 -0
- package/templates/workspaces/olivia/MEMORY.md +202 -0
- package/templates/workspaces/olivia/MISSION_CONTROL_DESIGN_SPEC_v1.md +1143 -0
- package/templates/workspaces/olivia/MVP-COMPLETION-SUMMARY.md +175 -0
- package/templates/workspaces/olivia/NETWORK_IMPLEMENTATION_PLAN.md +1556 -0
- package/templates/workspaces/olivia/NEW_NODES_BENCHMARK.txt +947 -0
- package/templates/workspaces/olivia/PLAYBOOK.md +42 -0
- package/templates/workspaces/olivia/SELF-HEALING-COMPLETE.md +150 -0
- package/templates/workspaces/olivia/SOUL.md +8 -8
- package/templates/workspaces/olivia/TOOLS.md +15 -0
- package/templates/workspaces/olivia/USER.md +17 -0
- package/templates/workspaces/olivia/alicefleet-supabase-credentials.md +50 -0
- package/templates/workspaces/olivia/dzombo-copy-rewrite.md +115 -0
- package/templates/workspaces/olivia/dzombo-implementation-plan.md +1248 -0
- package/templates/workspaces/olivia/fidelia-psychology.html +1594 -0
- package/templates/workspaces/olivia/lead_debug.png +0 -0
- package/templates/workspaces/olivia/minimatch-10.2.4.tgz +0 -0
- package/templates/workspaces/olivia/operation-bllm-research.md +157 -0
- package/templates/workspaces/olivia/qa-audit-mission-control-v2.md +538 -0
- package/templates/workspaces/olivia/roofmaxx_logo.svg +1 -0
- package/templates/workspaces/olivia/roofmaxx_social.jpg +0 -0
- package/templates/workspaces/olivia/skills/1password/SKILL.md +53 -0
- package/templates/workspaces/olivia/skills/1password/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/afrexai-recruiting-engine/README.md +57 -0
- package/templates/workspaces/olivia/skills/afrexai-recruiting-engine/SKILL.md +534 -0
- package/templates/workspaces/olivia/skills/afrexai-recruiting-engine/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/agent-security/SKILL.md +69 -0
- package/templates/workspaces/olivia/skills/agent-security/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/agentic-security-audit/SKILL.md +855 -0
- package/templates/workspaces/olivia/skills/agentic-security-audit/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/ai-automation-consulting/SKILL.md +67 -0
- package/templates/workspaces/olivia/skills/ai-automation-consulting/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/ai-automation-consulting/skill.json +12 -0
- package/templates/workspaces/olivia/skills/ai-presentation-maker/SKILL.md +1104 -0
- package/templates/workspaces/olivia/skills/ai-presentation-maker/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/ai-productivity-audit/SKILL.md +181 -0
- package/templates/workspaces/olivia/skills/ai-productivity-audit/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/ai-researcher/README.md +31 -0
- package/templates/workspaces/olivia/skills/ai-researcher/SKILL.md +59 -0
- package/templates/workspaces/olivia/skills/ai-researcher/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/ai-seo-writer/README.md +19 -0
- package/templates/workspaces/olivia/skills/ai-seo-writer/SKILL.md +100 -0
- package/templates/workspaces/olivia/skills/ai-seo-writer/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/analytics-tracking-2/SKILL.md +309 -0
- package/templates/workspaces/olivia/skills/analytics-tracking-2/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/api-doc-writer/SKILL.md +232 -0
- package/templates/workspaces/olivia/skills/api-doc-writer/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/api-generator/SKILL.md +49 -0
- package/templates/workspaces/olivia/skills/api-generator/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/api-generator/tips.md +10 -0
- package/templates/workspaces/olivia/skills/apple-notes/SKILL.md +50 -0
- package/templates/workspaces/olivia/skills/apple-notes/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/apple-reminders/SKILL.md +67 -0
- package/templates/workspaces/olivia/skills/apple-reminders/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/automation-workflows/SKILL.md +267 -0
- package/templates/workspaces/olivia/skills/automation-workflows/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/autoresearch/SKILL.md +46 -0
- package/templates/workspaces/olivia/skills/autoresearch/aria_write.py +148 -0
- package/templates/workspaces/olivia/skills/autoresearch/autoresearch.py +75 -0
- package/templates/workspaces/olivia/skills/azure-devops/SKILL.md +115 -0
- package/templates/workspaces/olivia/skills/azure-devops/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/blogwatcher/SKILL.md +46 -0
- package/templates/workspaces/olivia/skills/blogwatcher/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/blucli/SKILL.md +27 -0
- package/templates/workspaces/olivia/skills/blucli/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/check-analytics/SKILL.md +92 -0
- package/templates/workspaces/olivia/skills/check-analytics/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/cloud-architect/SKILL.md +89 -0
- package/templates/workspaces/olivia/skills/cloud-architect/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/cloud-infra-automation/SKILL.md +50 -0
- package/templates/workspaces/olivia/skills/cloud-infra-automation/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/cloud-storage/SKILL.md +61 -0
- package/templates/workspaces/olivia/skills/cloud-storage/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/cloud-storage/auth.md +97 -0
- package/templates/workspaces/olivia/skills/cloud-storage/costs.md +88 -0
- package/templates/workspaces/olivia/skills/cloud-storage/providers.md +55 -0
- package/templates/workspaces/olivia/skills/copywriting-pro/SKILL.md +107 -0
- package/templates/workspaces/olivia/skills/copywriting-pro/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/data-analyst-pro/SKILL.md +21 -0
- package/templates/workspaces/olivia/skills/data-analyst-pro/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/database-designer/README.md +388 -0
- package/templates/workspaces/olivia/skills/database-designer/SKILL.md +66 -0
- package/templates/workspaces/olivia/skills/database-designer/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/database-designer/index_optimizer.py +926 -0
- package/templates/workspaces/olivia/skills/database-designer/migration_generator.py +1199 -0
- package/templates/workspaces/olivia/skills/database-designer/schema_analyzer.py +982 -0
- package/templates/workspaces/olivia/skills/deploy-agent/SKILL.md +255 -0
- package/templates/workspaces/olivia/skills/deploy-agent/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/devops-automation-pack/SKILL.md +72 -0
- package/templates/workspaces/olivia/skills/devops-automation-pack/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/devops-automation-pack/deploy.sh +0 -0
- package/templates/workspaces/olivia/skills/financial-analysis-agent/SKILL.md +489 -0
- package/templates/workspaces/olivia/skills/financial-analysis-agent/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/gdpr-compliance-tracker/README.md +72 -0
- package/templates/workspaces/olivia/skills/gdpr-compliance-tracker/SKILL.md +226 -0
- package/templates/workspaces/olivia/skills/gdpr-compliance-tracker/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/gifgrep/SKILL.md +47 -0
- package/templates/workspaces/olivia/skills/gifgrep/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/github/SKILL.md +47 -0
- package/templates/workspaces/olivia/skills/github/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/gog/SKILL.md +36 -0
- package/templates/workspaces/olivia/skills/gog/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/growth-strategy-hub/SKILL.md +135 -0
- package/templates/workspaces/olivia/skills/growth-strategy-hub/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/growth-strategy-hub/metadata.json +4 -0
- package/templates/workspaces/olivia/skills/hetzner-cloud/SKILL.md +130 -0
- package/templates/workspaces/olivia/skills/hetzner-cloud/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/himalaya/SKILL.md +217 -0
- package/templates/workspaces/olivia/skills/himalaya/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/hotel-recommendation/SKILL.md +117 -0
- package/templates/workspaces/olivia/skills/hotel-recommendation/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/hr-policy-generator/SKILL.md +54 -0
- package/templates/workspaces/olivia/skills/hr-policy-generator/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/human-writing/SKILL.md +41 -0
- package/templates/workspaces/olivia/skills/human-writing/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/imsg/SKILL.md +25 -0
- package/templates/workspaces/olivia/skills/imsg/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/in-depth-research/SKILL.md +124 -0
- package/templates/workspaces/olivia/skills/in-depth-research/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/in-depth-research/methodology.md +75 -0
- package/templates/workspaces/olivia/skills/in-depth-research/output-formats.md +168 -0
- package/templates/workspaces/olivia/skills/in-depth-research/sources.md +80 -0
- package/templates/workspaces/olivia/skills/javascript-skills/README.md +71 -0
- package/templates/workspaces/olivia/skills/javascript-skills/SKILL.md +746 -0
- package/templates/workspaces/olivia/skills/javascript-skills/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/leadership-strategy-playbook/SKILL.md +147 -0
- package/templates/workspaces/olivia/skills/leadership-strategy-playbook/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/market-research-agent/README.md +29 -0
- package/templates/workspaces/olivia/skills/market-research-agent/SKILL.md +52 -0
- package/templates/workspaces/olivia/skills/market-research-agent/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/marketing-analytics/SKILL.md +74 -0
- package/templates/workspaces/olivia/skills/marketing-analytics/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/marketing-master-io/SKILL.md +125 -0
- package/templates/workspaces/olivia/skills/marketing-master-io/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/marketing-strategy-pmm/SKILL.md +398 -0
- package/templates/workspaces/olivia/skills/marketing-strategy-pmm/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/meta-ads-analytics/SKILL.md +53 -0
- package/templates/workspaces/olivia/skills/meta-ads-analytics/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/obsidian/SKILL.md +55 -0
- package/templates/workspaces/olivia/skills/obsidian/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/openclaw-accounting/SKILL.md +125 -0
- package/templates/workspaces/olivia/skills/openclaw-accounting/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/openclaw-security-toolkit/CHANGELOG.md +35 -0
- package/templates/workspaces/olivia/skills/openclaw-security-toolkit/CHANNELLOG.md +73 -0
- package/templates/workspaces/olivia/skills/openclaw-security-toolkit/README.md +161 -0
- package/templates/workspaces/olivia/skills/openclaw-security-toolkit/SKILL.md +130 -0
- package/templates/workspaces/olivia/skills/openclaw-security-toolkit/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/openclaw-security-toolkit/config.json +36 -0
- package/templates/workspaces/olivia/skills/openclaw-security-toolkit/metadata.json +19 -0
- package/templates/workspaces/olivia/skills/openhue/SKILL.md +30 -0
- package/templates/workspaces/olivia/skills/openhue/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/orgx-operations-agent/SKILL.md +41 -0
- package/templates/workspaces/olivia/skills/orgx-operations-agent/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/outreach/SKILL.md +84 -0
- package/templates/workspaces/olivia/skills/outreach/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/outreach/by-type.md +166 -0
- package/templates/workspaces/olivia/skills/outreach/templates.md +154 -0
- package/templates/workspaces/olivia/skills/outreach/tracking.md +145 -0
- package/templates/workspaces/olivia/skills/persona-hr-coordinator/SKILL.md +38 -0
- package/templates/workspaces/olivia/skills/persona-hr-coordinator/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/personal-productivity/SKILL.md +161 -0
- package/templates/workspaces/olivia/skills/personal-productivity/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/personal-productivity/index.js +363 -0
- package/templates/workspaces/olivia/skills/personal-productivity/package.json +15 -0
- package/templates/workspaces/olivia/skills/personal-travel/README.md +34 -0
- package/templates/workspaces/olivia/skills/personal-travel/SKILL.md +46 -0
- package/templates/workspaces/olivia/skills/personal-travel/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/presentation-html-generator-skill/SKILL.md +185 -0
- package/templates/workspaces/olivia/skills/presentation-html-generator-skill/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/product-manager/SKILL.md +77 -0
- package/templates/workspaces/olivia/skills/product-manager/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/quant-strategy/SKILL.md +28 -0
- package/templates/workspaces/olivia/skills/quant-strategy/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/sales-pipeline-tracker/README.md +29 -0
- package/templates/workspaces/olivia/skills/sales-pipeline-tracker/SKILL.md +45 -0
- package/templates/workspaces/olivia/skills/sales-pipeline-tracker/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/security-auditor/SKILL.md +399 -0
- package/templates/workspaces/olivia/skills/security-auditor/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/security-hardening/SKILL.md +296 -0
- package/templates/workspaces/olivia/skills/security-hardening/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/security-scanner/SKILL.md +67 -0
- package/templates/workspaces/olivia/skills/security-scanner/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/seo-optimization/SKILL.md +31 -0
- package/templates/workspaces/olivia/skills/seo-optimization/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/service-booking/SKILL.md +193 -0
- package/templates/workspaces/olivia/skills/service-booking/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/sme-hr-automation/SKILL.md +131 -0
- package/templates/workspaces/olivia/skills/sme-hr-automation/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/social-media-scheduler/README.md +29 -0
- package/templates/workspaces/olivia/skills/social-media-scheduler/SKILL.md +49 -0
- package/templates/workspaces/olivia/skills/social-media-scheduler/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/sonoscli/SKILL.md +26 -0
- package/templates/workspaces/olivia/skills/sonoscli/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/strategy-advisor/SKILL.md +33 -0
- package/templates/workspaces/olivia/skills/strategy-advisor/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/summarize/SKILL.md +49 -0
- package/templates/workspaces/olivia/skills/summarize/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/things-mac/SKILL.md +61 -0
- package/templates/workspaces/olivia/skills/things-mac/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/travel-itinerary-planner/SKILL.md +121 -0
- package/templates/workspaces/olivia/skills/travel-itinerary-planner/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/travel-manager/SKILL.md +36 -0
- package/templates/workspaces/olivia/skills/travel-manager/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/travel-planning/SKILL.md +238 -0
- package/templates/workspaces/olivia/skills/travel-planning/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/travel-planning/booking-guide.md +91 -0
- package/templates/workspaces/olivia/skills/travel-planning/memory-template.md +111 -0
- package/templates/workspaces/olivia/skills/travel-planning/multi-city.md +131 -0
- package/templates/workspaces/olivia/skills/travel-planning/packing-templates.md +155 -0
- package/templates/workspaces/olivia/skills/travel-planning/setup.md +66 -0
- package/templates/workspaces/olivia/skills/update-it-all/SKILL.md +143 -0
- package/templates/workspaces/olivia/skills/update-it-all/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/voice/SKILL.md +62 -0
- package/templates/workspaces/olivia/skills/weather/SKILL.md +49 -0
- package/templates/workspaces/olivia/skills/weather/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/web-researcher/SKILL.md +21 -0
- package/templates/workspaces/olivia/skills/web-researcher/_meta.json +6 -0
- package/templates/workspaces/olivia/skills/website-seo/SKILL.md +284 -0
- package/templates/workspaces/olivia/skills/website-seo/_meta.json +6 -0
- package/templates/workspaces/olivia/stripe-welcome-n8n.json +103 -0
- package/templates/workspaces/olivia/test2.wav.wav +0 -0
- package/templates/workspaces/olivia/test_speech.json +1 -0
- package/templates/workspaces/olivia/test_speech.srt +0 -0
- package/templates/workspaces/olivia/test_speech.tsv +1 -0
- package/templates/workspaces/olivia/test_speech.txt +0 -0
- package/templates/workspaces/olivia/test_speech.vtt +2 -0
- package/templates/workspaces/owen/AGENTS.md +59 -0
- package/templates/workspaces/owen/FEEDBACK.md +12 -0
- package/templates/workspaces/owen/HEARTBEAT.md +5 -0
- package/templates/workspaces/owen/IDENTITY.md +6 -0
- package/templates/workspaces/owen/LEARNINGS.md +46 -0
- package/templates/workspaces/owen/MEMORY.md +22 -0
- package/templates/workspaces/owen/PLAYBOOK.md +16 -0
- package/templates/workspaces/owen/SOUL.md +1 -1
- package/templates/workspaces/owen/TOOLS.md +15 -0
- package/templates/workspaces/owen/USER.md +17 -0
- package/templates/workspaces/parker/AGENTS.md +59 -0
- package/templates/workspaces/parker/FEEDBACK.md +11 -0
- package/templates/workspaces/parker/HEARTBEAT.md +5 -0
- package/templates/workspaces/parker/IDENTITY.md +6 -0
- package/templates/workspaces/parker/LEARNINGS.md +17 -0
- package/templates/workspaces/parker/MEMORY.md +22 -0
- package/templates/workspaces/parker/PLAYBOOK.md +16 -0
- package/templates/workspaces/parker/SOUL.md +1 -1
- package/templates/workspaces/parker/TOOLS.md +15 -0
- package/templates/workspaces/parker/USER.md +13 -0
- package/templates/workspaces/quinn/AGENTS.md +52 -0
- package/templates/workspaces/quinn/FEEDBACK.md +11 -0
- package/templates/workspaces/quinn/HEARTBEAT.md +5 -0
- package/templates/workspaces/quinn/IDENTITY.md +6 -0
- package/templates/workspaces/quinn/LEARNINGS.md +35 -0
- package/templates/workspaces/quinn/MEMORY.md +22 -0
- package/templates/workspaces/quinn/PLAYBOOK.md +16 -0
- package/templates/workspaces/quinn/SOUL.md +1 -1
- package/templates/workspaces/quinn/USER.md +17 -0
- package/templates/workspaces/quinn/alice-login-page.png +0 -0
- package/templates/workspaces/rowan/AGENTS.md +59 -0
- package/templates/workspaces/rowan/FEEDBACK.md +12 -0
- package/templates/workspaces/rowan/HEARTBEAT.md +5 -0
- package/templates/workspaces/rowan/IDENTITY.md +6 -0
- package/templates/workspaces/rowan/LEARNINGS.md +12 -0
- package/templates/workspaces/rowan/MEMORY.md +22 -0
- package/templates/workspaces/rowan/PLAYBOOK.md +16 -0
- package/templates/workspaces/rowan/SOUL.md +1 -1
- package/templates/workspaces/rowan/USER.md +17 -0
- package/templates/workspaces/selena/AGENTS.md +59 -0
- package/templates/workspaces/selena/FEEDBACK.md +12 -0
- package/templates/workspaces/selena/HEARTBEAT.md +5 -0
- package/templates/workspaces/selena/IDENTITY.md +6 -0
- package/templates/workspaces/selena/LEARNINGS.md +24 -0
- package/templates/workspaces/selena/MEMORY.md +22 -0
- package/templates/workspaces/selena/PLAYBOOK.md +16 -0
- package/templates/workspaces/selena/SOUL.md +1 -1
- package/templates/workspaces/selena/USER.md +17 -0
- package/templates/workspaces/selena/kids-ai-security-compliance-plan.md +791 -0
- package/templates/workspaces/selena/kidspark-coppa-compliance-audit.md +866 -0
- package/templates/workspaces/sloane/AGENTS.md +59 -0
- package/templates/workspaces/sloane/FEEDBACK.md +12 -0
- package/templates/workspaces/sloane/HEARTBEAT.md +9 -0
- package/templates/workspaces/sloane/IDENTITY.md +6 -0
- package/templates/workspaces/sloane/LEARNINGS.md +6 -0
- package/templates/workspaces/sloane/MEMORY.md +22 -0
- package/templates/workspaces/sloane/PLAYBOOK.md +16 -0
- package/templates/workspaces/sloane/SOUL.md +1 -1
- package/templates/workspaces/sloane/TOOLS.md +15 -0
- package/templates/workspaces/sloane/USER.md +13 -0
- package/templates/workspaces/smoketestagent/AGENTS.md +52 -0
- package/templates/workspaces/smoketestagent/FEEDBACK.md +3 -0
- package/templates/workspaces/smoketestagent/HEARTBEAT.md +14 -0
- package/templates/workspaces/smoketestagent/IDENTITY.md +6 -0
- package/templates/workspaces/smoketestagent/LEARNINGS.md +3 -0
- package/templates/workspaces/smoketestagent/MEMORY.md +24 -0
- package/templates/workspaces/smoketestagent/PLAYBOOK.md +7 -0
- package/templates/workspaces/smoketestagent/SOUL.md +32 -0
- package/templates/workspaces/smoketestagent/TOOLS.md +13 -0
- package/templates/workspaces/smoketestagent/USER.md +5 -0
- package/templates/workspaces/sophie/AGENTS.md +59 -0
- package/templates/workspaces/sophie/FEEDBACK.md +12 -0
- package/templates/workspaces/sophie/HEARTBEAT.md +9 -0
- package/templates/workspaces/sophie/IDENTITY.md +6 -0
- package/templates/workspaces/sophie/LEARNINGS.md +6 -0
- package/templates/workspaces/sophie/MEMORY.md +22 -0
- package/templates/workspaces/sophie/PLAYBOOK.md +16 -0
- package/templates/workspaces/sophie/SOUL.md +1 -1
- package/templates/workspaces/sophie/TOOLS.md +15 -0
- package/templates/workspaces/sophie/USER.md +17 -0
- package/templates/workspaces/tommy/AGENTS.md +59 -0
- package/templates/workspaces/tommy/FEEDBACK.md +12 -0
- package/templates/workspaces/tommy/HEARTBEAT.md +9 -0
- package/templates/workspaces/tommy/IDENTITY.md +6 -0
- package/templates/workspaces/tommy/LEARNINGS.md +6 -0
- package/templates/workspaces/tommy/MEMORY.md +22 -0
- package/templates/workspaces/tommy/PLAYBOOK.md +16 -0
- package/templates/workspaces/tommy/SOUL.md +1 -1
- package/templates/workspaces/tommy/TOOLS.md +15 -0
- package/templates/workspaces/tommy/USER.md +17 -0
- package/templates/workspaces/uma/AGENTS.md +59 -0
- package/templates/workspaces/uma/FEEDBACK.md +11 -0
- package/templates/workspaces/uma/HEARTBEAT.md +5 -0
- package/templates/workspaces/uma/IDENTITY.md +6 -0
- package/templates/workspaces/uma/LEARNINGS.md +11 -0
- package/templates/workspaces/uma/MEMORY.md +22 -0
- package/templates/workspaces/uma/PLAYBOOK.md +16 -0
- package/templates/workspaces/uma/SOUL.md +1 -1
- package/templates/workspaces/uma/TOOLS.md +15 -0
- package/templates/workspaces/uma/USER.md +13 -0
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
**Adaptive Learning & Intelligent Coordination Engine**
|
|
4
4
|
|
|
5
|
-
One conversation. One orchestrator. Ten starter agents — with
|
|
5
|
+
One conversation. One orchestrator. Ten starter agents — with 23 more in Pro. A.L.I.C.E. turns your agent runtime into a full AI team — talk to A.L.I.C.E. (or just Alice), and she routes your request to the right expert.
|
|
6
6
|
|
|
7
7
|
**NemoClaw compatible** — A.L.I.C.E. v1.2.7+ runs natively on [NVIDIA NemoClaw](https://nvidia.com/nemoclaw), the secure open-source agent runtime. Agents execute inside the OpenShell sandbox for enterprise-grade security.
|
|
8
8
|
|
|
@@ -16,7 +16,7 @@ That's it. The installer detects your runtime (NemoClaw or OpenClaw) and sets ev
|
|
|
16
16
|
|
|
17
17
|
## What You Get
|
|
18
18
|
|
|
19
|
-
**Starter** includes 10 agents. **Pro** unlocks
|
|
19
|
+
**Starter** includes 10 agents. **Pro** unlocks 23 more — [sign up at getalice.av3.ai](https://getalice.av3.ai/signup?plan=pro)
|
|
20
20
|
|
|
21
21
|
**A.L.I.C.E. | Control Cloud** is available as a Pro add-on. If enabled during install, the package now:
|
|
22
22
|
- installs the `mission-control-bridge` plugin into your OpenClaw home
|
|
@@ -58,6 +58,9 @@ An orchestrator (A.L.I.C.E., also addressable as Alice or Olivia) backed by spec
|
|
|
58
58
|
| **Parker** | Project Management | 📅 | Pro |
|
|
59
59
|
| **Aria** | Autonomous Research | 🔬 | Pro |
|
|
60
60
|
| **Nate** | n8n Automation | 🔧 | Pro |
|
|
61
|
+
| **MaxxiPro** | Roof Maxx Expert | 🏠 | Pro |
|
|
62
|
+
| **AccuScope** | AccuLynx CRM Auditor | 📊 | Pro |
|
|
63
|
+
| **SmokeTestAgent** | QA Specialist | 🧪 | Pro |
|
|
61
64
|
|
|
62
65
|
## Model Flexibility
|
|
63
66
|
|
package/package.json
CHANGED
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: acculynx
|
|
3
|
+
description: 'Analyze AccuLynx CRM CSV exports and build a live visual P&L dashboard on Vercel. Use when: Jesse or Rob drops AccuLynx CSV files in the A.L.I.C.E Sales chat and asks for analysis, a visual dashboard, or a PDF report. Covers Job Profitability Report and Job Expenses Report. Handles data quality flagging, trade/rep/stage breakdowns, and Vercel deployment.'
|
|
4
|
+
metadata:
|
|
5
|
+
{
|
|
6
|
+
"openclaw": { "emoji": "📊", "requires": { "anyBins": ["python3", "node", "npx", "vercel"] } }
|
|
7
|
+
}
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# AccuLynx Analysis Skill
|
|
11
|
+
|
|
12
|
+
Builds a full visual P&L + Cash Flow dashboard from AccuLynx CSV exports and deploys it live to Vercel.
|
|
13
|
+
|
|
14
|
+
## Trigger Phrases
|
|
15
|
+
- "analyze acculynx"
|
|
16
|
+
- "build acculynx dashboard"
|
|
17
|
+
- "upload acculynx csv"
|
|
18
|
+
- "drop acculynx"
|
|
19
|
+
- "refresh the dashboard"
|
|
20
|
+
- "acclynx report"
|
|
21
|
+
- Any message with a `.csv` attachment from AccuLynx in the A.L.I.C.E Sales thread
|
|
22
|
+
|
|
23
|
+
## Two CSV Types (know the difference)
|
|
24
|
+
|
|
25
|
+
### 1. Job Profitability Report
|
|
26
|
+
**Filename pattern:** `Job_Profitability_Report*.csv`
|
|
27
|
+
**What it contains:** Per-job revenue, expenses, profit, margin %, stage, trades, salesperson
|
|
28
|
+
**Key columns:** `Contract Amount`, `Orders Total`, `Profit`, `Profit %`, `Total Expenses`, `Primary Salesperson`, `Order Trades`, `Current Milestone`
|
|
29
|
+
**Use for:** Overall P&L, top/bottom jobs, rep performance, trade profitability, margin distributions, data quality
|
|
30
|
+
**NOT for:** Cash flow (that's the Expenses Report)
|
|
31
|
+
|
|
32
|
+
### 2. Job Expenses Report
|
|
33
|
+
**Filename pattern:** `Job_Expenses_Report*.csv` or `job_expenses_report*.csv`
|
|
34
|
+
**What it contains:** Weekly cash outflows (paid expenses, unbudgeted/additional costs)
|
|
35
|
+
**Key columns:** `Payment Date (by week)`, `Total Paid Expenses`, `Paid Expenses Count`, `Additional Expenses Total`, `Additional Expenses Count`
|
|
36
|
+
**Use for:** Cash flow analysis, monthly expense trends, peak payout weeks
|
|
37
|
+
**NOT for:** Per-job profitability (use the Profitability Report for that)
|
|
38
|
+
|
|
39
|
+
## Standard Workflow
|
|
40
|
+
|
|
41
|
+
### Step 1 — Save the CSV(s)
|
|
42
|
+
When a CSV arrives via Telegram media attachment, it's auto-saved to:
|
|
43
|
+
```
|
|
44
|
+
/Users/aliceclaw/.openclaw/media/inbound/
|
|
45
|
+
```
|
|
46
|
+
Look for the newest matching file. The filename will contain the report type and date.
|
|
47
|
+
|
|
48
|
+
### Step 2 — Analyze the Data
|
|
49
|
+
Write and run a Python analysis script. Key things to compute:
|
|
50
|
+
|
|
51
|
+
**From Job Profitability Report:**
|
|
52
|
+
```python
|
|
53
|
+
import csv
|
|
54
|
+
from collections import defaultdict
|
|
55
|
+
|
|
56
|
+
jobs = []
|
|
57
|
+
with open('/path/to/Job_Profitability_Report*.csv') as f:
|
|
58
|
+
reader = csv.DictReader(f)
|
|
59
|
+
for row in reader:
|
|
60
|
+
try:
|
|
61
|
+
jobs.append({
|
|
62
|
+
'name': row['Job Name'],
|
|
63
|
+
'contract': float(row['Contract Amount'] or 0),
|
|
64
|
+
'profit': float(row['Profit'] or 0),
|
|
65
|
+
'profit_pct': float(row['Profit %'] or 0),
|
|
66
|
+
'expenses': float(row['Total Expenses'] or 0),
|
|
67
|
+
'salesperson': row['Primary Salesperson'],
|
|
68
|
+
'trades': row['Order Trades'],
|
|
69
|
+
'milestone': row['Current Milestone'],
|
|
70
|
+
})
|
|
71
|
+
except: pass
|
|
72
|
+
```
|
|
73
|
+
Compute: total revenue/profit/expenses, overall margin, profitable/lost counts, by-stage summaries, by-rep summaries, by-trade summaries, top 10/bottom 10 jobs, data quality issues (zero contract, missing trades, pending losses).
|
|
74
|
+
|
|
75
|
+
**From Job Expenses Report:**
|
|
76
|
+
```python
|
|
77
|
+
rows = []
|
|
78
|
+
with open('/path/to/job_expenses_report*.csv') as f:
|
|
79
|
+
reader = csv.DictReader(f)
|
|
80
|
+
for row in reader:
|
|
81
|
+
rows.append({
|
|
82
|
+
'date': row['Payment Date (by week)'],
|
|
83
|
+
'paid': float(row['Total Paid Expenses']),
|
|
84
|
+
'additional': float(row['Additional Expenses Total']),
|
|
85
|
+
'count': int(row['Paid Expenses Count']),
|
|
86
|
+
})
|
|
87
|
+
```
|
|
88
|
+
Compute: total paid, avg weekly, monthly aggregation, peak week, trend over time.
|
|
89
|
+
|
|
90
|
+
### Step 3 — Build the Dashboard
|
|
91
|
+
Use Next.js 14 + Tailwind CSS + Chart.js (via CDN in layout.tsx).
|
|
92
|
+
|
|
93
|
+
**Project location:** `/tmp/acculynx-dashboard/`
|
|
94
|
+
**Vercel deploy token:** `<VERCEL_TOKEN>`
|
|
95
|
+
|
|
96
|
+
**Standard sections:**
|
|
97
|
+
1. About This Data (explain both CSV types)
|
|
98
|
+
2. Portfolio KPIs (revenue, profit, margin, win rate)
|
|
99
|
+
3. Cash Flow Analysis (expenses data — if Job Expenses Report available)
|
|
100
|
+
4. P&L by Job Stage
|
|
101
|
+
5. Top 10 Jobs vs Biggest Losses
|
|
102
|
+
6. Sales Rep Performance (bar charts for profit and margin)
|
|
103
|
+
7. Trade Type Profitability
|
|
104
|
+
8. Margin / Profit Distributions
|
|
105
|
+
9. Data Quality Issues (zero contract, missing trades, pending losses)
|
|
106
|
+
|
|
107
|
+
**Required package.json dependencies:**
|
|
108
|
+
```json
|
|
109
|
+
{
|
|
110
|
+
"dependencies": {
|
|
111
|
+
"next": "^14.2.0",
|
|
112
|
+
"react": "^18.3.0",
|
|
113
|
+
"react-dom": "^18.3.0"
|
|
114
|
+
},
|
|
115
|
+
"devDependencies": {
|
|
116
|
+
"typescript": "^5.4.0",
|
|
117
|
+
"tailwindcss": "^3.4.0",
|
|
118
|
+
"autoprefixer": "^10.4.0",
|
|
119
|
+
"postcss": "^8.4.0",
|
|
120
|
+
"@types/node": "^20.0.0",
|
|
121
|
+
"@types/react": "^18.3.0",
|
|
122
|
+
"@types/react-dom": "^18.3.0"
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
**Chart.js CDN (add to layout.tsx head):**
|
|
128
|
+
```tsx
|
|
129
|
+
<script src="https://cdn.jsdelivr.net/npm/chart.js@4.4.0/dist/chart.umd.min.js" />
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
**Build command:** `cd /tmp/acculynx-dashboard && npm run build`
|
|
133
|
+
**Deploy command:** `cd /tmp/acculynx-dashboard && npx vercel deploy --prod --yes --token <VERCEL_TOKEN>`
|
|
134
|
+
|
|
135
|
+
### Step 4 — Deploy and Report
|
|
136
|
+
1. Run build — fix any TypeScript errors (common: `const` redeclaration, missing `any` type on Chart.js callbacks)
|
|
137
|
+
2. Deploy to Vercel with the token above
|
|
138
|
+
3. Reply in the Telegram thread with the live URL
|
|
139
|
+
4. Summarize key findings in the message
|
|
140
|
+
|
|
141
|
+
## Common Issues
|
|
142
|
+
|
|
143
|
+
### TypeScript error: Parameter 'ctx' implicitly has 'any' type
|
|
144
|
+
```tsx
|
|
145
|
+
// Wrong:
|
|
146
|
+
label: ctx => ...
|
|
147
|
+
// Right:
|
|
148
|
+
label: (ctx: any) => ...
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
### BUILD ERROR: 'const' declarations must be initialized
|
|
152
|
+
Spaces in constant names — use underscores:
|
|
153
|
+
```python
|
|
154
|
+
# Wrong:
|
|
155
|
+
BREAK EVEN = 11
|
|
156
|
+
# Right:
|
|
157
|
+
BREAK_EVEN = 11
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
### Chart.js not loading
|
|
161
|
+
Load via CDN script tags in `layout.tsx <head>` — don't use npm install for Chart.js in this setup.
|
|
162
|
+
|
|
163
|
+
## Key Thresholds (construction industry)
|
|
164
|
+
- **Good margin:** 30%+
|
|
165
|
+
- **Acceptable margin:** 20–30%
|
|
166
|
+
- **Warning:** <20% or any negative
|
|
167
|
+
- **Roofing typically:** 10–20% (thin — flag if <10%)
|
|
168
|
+
- **Service trades:** usually high margin (40%+)
|
|
169
|
+
- **Overall portfolio margin:** good at >15%
|
|
170
|
+
|
|
171
|
+
## Data Quality Flags to Always Report
|
|
172
|
+
1. Jobs with `Contract Amount = 0` — profit can't be calculated
|
|
173
|
+
2. Jobs with `Profit % = 0` but nonzero profit — margin not computable
|
|
174
|
+
3. Jobs with no `Order Trades` — unclassified
|
|
175
|
+
4. Approved/Completed/Invoiced jobs with negative profit — embedded losses
|
|
176
|
+
5. `Additional Expenses` with no corresponding payments — unbudgeted costs
|
|
177
|
+
|
|
178
|
+
## Reply Format
|
|
179
|
+
Always lead with the dashboard URL, then summarize:
|
|
180
|
+
1. Key P&L numbers (revenue, profit, margin)
|
|
181
|
+
2. The most important insight (worst job, worst rep, worst trade, or cash flow flag)
|
|
182
|
+
3. Data quality summary
|
|
183
|
+
4. Ask: "Want me to set up weekly auto-refresh?"
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import csv
|
|
2
|
+
from collections import defaultdict
|
|
3
|
+
|
|
4
|
+
jobs = []
|
|
5
|
+
|
|
6
|
+
with open('/Users/aliceclaw/.openclaw/media/inbound/Job_Profitability_Report-4_08_2026_14_4_7---1ed402bb-54d3-4511-b88f-76cdbc4769ae.csv') as f:
|
|
7
|
+
reader = csv.DictReader(f)
|
|
8
|
+
for row in reader:
|
|
9
|
+
try:
|
|
10
|
+
contract = float(row['Contract Amount'] or 0)
|
|
11
|
+
orders_total = float(row['Orders Total'] or 0)
|
|
12
|
+
profit = float(row['Profit'] or 0)
|
|
13
|
+
profit_pct = float(row['Profit %'] or 0)
|
|
14
|
+
total_expenses = float(row['Total Expenses'] or 0)
|
|
15
|
+
salesperson = row['Primary Salesperson']
|
|
16
|
+
trades = row['Order Trades']
|
|
17
|
+
name = row['Job Name']
|
|
18
|
+
jobs.append({
|
|
19
|
+
'name': name,
|
|
20
|
+
'contract': contract,
|
|
21
|
+
'orders': orders_total,
|
|
22
|
+
'profit': profit,
|
|
23
|
+
'profit_pct': profit_pct,
|
|
24
|
+
'expenses': total_expenses,
|
|
25
|
+
'salesperson': salesperson,
|
|
26
|
+
'trades': trades
|
|
27
|
+
})
|
|
28
|
+
except:
|
|
29
|
+
pass
|
|
30
|
+
|
|
31
|
+
# Sort by profit
|
|
32
|
+
by_profit = sorted(jobs, key=lambda x: x['profit'], reverse=True)
|
|
33
|
+
by_margin = sorted(jobs, key=lambda x: x['profit_pct'], reverse=True)
|
|
34
|
+
losers = sorted(jobs, key=lambda x: x['profit'])
|
|
35
|
+
|
|
36
|
+
total_profit = sum(j['profit'] for j in jobs)
|
|
37
|
+
total_revenue = sum(j['contract'] for j in jobs)
|
|
38
|
+
total_expenses = sum(j['expenses'] for j in jobs)
|
|
39
|
+
profitable_count = len([j for j in jobs if j['profit'] > 0])
|
|
40
|
+
lost_money_count = len([j for j in jobs if j['profit'] < 0])
|
|
41
|
+
zero_count = len([j for j in jobs if j['profit'] == 0])
|
|
42
|
+
|
|
43
|
+
print("=" * 72)
|
|
44
|
+
print("JESSE -- FULL P&L ANALYSIS (Job Profitability Report)")
|
|
45
|
+
print("=" * 72)
|
|
46
|
+
|
|
47
|
+
print("\nOVERALL P&L SUMMARY")
|
|
48
|
+
print(f" Total Revenue: ${total_revenue:>14,.2f}")
|
|
49
|
+
print(f" Total Expenses: ${total_expenses:>14,.2f}")
|
|
50
|
+
print(f" TOTAL PROFIT: ${total_profit:>14,.2f}")
|
|
51
|
+
print(f" Overall Margin: {(total_profit/total_revenue*100):>14.1f}%")
|
|
52
|
+
print(f" ")
|
|
53
|
+
print(f" Jobs Profitable: {profitable_count}")
|
|
54
|
+
print(f" Jobs Lost Money: {lost_money_count}")
|
|
55
|
+
print(f" Jobs Break-Even: {zero_count}")
|
|
56
|
+
print(f" Total Jobs: {len(jobs)}")
|
|
57
|
+
|
|
58
|
+
print("\n" + "=" * 72)
|
|
59
|
+
print("TOP 10 JOBS BY PROFIT $")
|
|
60
|
+
print("-" * 72)
|
|
61
|
+
print(f"{'Job':<38} {'Profit':>10} {'Margin':>8} {'Salesperson':<20}")
|
|
62
|
+
print("-" * 72)
|
|
63
|
+
for j in by_profit[:10]:
|
|
64
|
+
print(f"{j['name'][:36]:<38} ${j['profit']:>9,.0f} {j['profit_pct']*100:>6.0f}% {j['salesperson'][:18]:<20}")
|
|
65
|
+
|
|
66
|
+
print("\n" + "=" * 72)
|
|
67
|
+
print("TOP 10 JOBS BY MARGIN %")
|
|
68
|
+
print("-" * 72)
|
|
69
|
+
print(f"{'Job':<38} {'Margin':>8} {'Profit':>10} {'Salesperson':<20}")
|
|
70
|
+
print("-" * 72)
|
|
71
|
+
for j in by_margin[:10]:
|
|
72
|
+
if j['contract'] > 0:
|
|
73
|
+
print(f"{j['name'][:36]:<38} {j['profit_pct']*100:>6.0f}% ${j['profit']:>9,.0f} {j['salesperson'][:18]:<20}")
|
|
74
|
+
|
|
75
|
+
print("\n" + "=" * 72)
|
|
76
|
+
print("⚠️ JOBS THAT LOST MONEY")
|
|
77
|
+
print("-" * 72)
|
|
78
|
+
print(f"{'Job':<38} {'Loss':>10} {'Margin':>8} {'Salesperson':<20}")
|
|
79
|
+
print("-" * 72)
|
|
80
|
+
lost = [j for j in jobs if j['profit'] < 0]
|
|
81
|
+
for j in sorted(lost, key=lambda x: x['profit'])[:10]:
|
|
82
|
+
print(f"{j['name'][:36]:<38} ${j['profit']:>9,.0f} {j['profit_pct']*100:>6.0f}% {j['salesperson'][:18]:<20}")
|
|
83
|
+
if not lost:
|
|
84
|
+
print(" No jobs with negative profit found")
|
|
85
|
+
|
|
86
|
+
print("\n" + "=" * 72)
|
|
87
|
+
print("SALESRep PERFORMANCE (Profit)")
|
|
88
|
+
print("-" * 72)
|
|
89
|
+
reps = defaultdict(lambda: {'profit': 0, 'revenue': 0, 'count': 0})
|
|
90
|
+
for j in jobs:
|
|
91
|
+
reps[j['salesperson']]['profit'] += j['profit']
|
|
92
|
+
reps[j['salesperson']]['revenue'] += j['contract']
|
|
93
|
+
reps[j['salesperson']]['count'] += 1
|
|
94
|
+
print(f"{'Salesperson':<22} {'Jobs':>5} {'Revenue':>12} {'Profit':>12} {'Margin':>8}")
|
|
95
|
+
print("-" * 72)
|
|
96
|
+
for rep, d in sorted(reps.items(), key=lambda x: x[1]['profit'], reverse=True):
|
|
97
|
+
margin = (d['profit']/d['revenue']*100) if d['revenue'] > 0 else 0
|
|
98
|
+
print(f"{rep[:20]:<22} {d['count']:>5} ${d['revenue']:>10,.0f} ${d['profit']:>10,.0f} {margin:>7.0f}%")
|
|
99
|
+
|
|
100
|
+
print("\n" + "=" * 72)
|
|
101
|
+
print("TRADE PERFORMANCE (Profit by Primary Trade)")
|
|
102
|
+
print("-" * 72)
|
|
103
|
+
trades = defaultdict(lambda: {'profit': 0, 'revenue': 0, 'count': 0})
|
|
104
|
+
for j in jobs:
|
|
105
|
+
primary_trade = j['trades'].split(',')[0].strip() if j['trades'] else 'Unknown'
|
|
106
|
+
trades[primary_trade]['profit'] += j['profit']
|
|
107
|
+
trades[primary_trade]['revenue'] += j['contract']
|
|
108
|
+
trades[primary_trade]['count'] += 1
|
|
109
|
+
print(f"{'Trade':<20} {'Jobs':>5} {'Revenue':>12} {'Profit':>12} {'Margin':>8}")
|
|
110
|
+
print("-" * 72)
|
|
111
|
+
for trade, d in sorted(trades.items(), key=lambda x: x[1]['profit'], reverse=True):
|
|
112
|
+
margin = (d['profit']/d['revenue']*100) if d['revenue'] > 0 else 0
|
|
113
|
+
print(f"{trade[:18]:<20} {d['count']:>5} ${d['revenue']:>10,.0f} ${d['profit']:>10,.0f} {margin:>7.0f}%")
|
|
114
|
+
|
|
115
|
+
EOF
|
|
116
|
+
python3 /tmp/acculynx_analysis.py
|