| name | joko-proactive-agent |
| description | Proactive agent that detects signals and suggests actions with Slack notifications. Use when working with joko proactive agent. |
| domain | core |
| author | oyi77 |
| license | Apache-2.0 |
| subdomain | core-platform |
| tags | ["agent","ai-agent","infrastructure","joko","memory","proactive","self-improvement","slack"] |
| allowed-tools | ["MCP(slack:*)","MCP(notion:*)"] |
| version | 1.0.0 |
Joko Proactive Agent
When to Use
Trigger phrases:
- "joko proactive agent"
- "Help me with joko proactive agent"
Use cases:
- When the task matches this skill's domain expertise
When NOT to use:
- For tasks outside this skill's scope
Proactive agent that monitors business signals, detects opportunities/issues, and suggests actions with Slack notifications.
When NOT to Use
- When the task can be solved with existing standard libraries
- When the infrastructure is already in place and working
- When the added complexity does not provide measurable benefit
Overview
Joko Proactive Agent is a foundational core infrastructure skill that provides system foundation capabilities for the agent ecosystem.
Architecture
- Input layer — Receives and validates incoming requests
- Processing layer — Core logic for system foundation
- Output layer — Formats and delivers results
- State management — Maintains context across invocations
Configuration
- Set up required environment variables and paths
- Configure logging level and output format
- Define resource limits (memory, time, API calls)
- Enable/disable features via configuration flags
Integration
- Exposes standard interfaces for other skills to consume
- Supports event-driven and request-response patterns
- Compatible with the 1ai-skills hook system
- Logs metrics for the skill performance monitor
Anti-Rationalization Table
| Rationalization | Reality |
|---|
| "I will add monitoring later" | Without monitoring, you cannot detect failures. Add it from day one. |
| "One model is enough" | Different tasks need different models. Route intelligently. |
| "Premature optimization" | Infrastructure decisions are hard to change later. Design for scale early. |
ROUTES = {
"code": ["claude-sonnet-4-20250514", ],
: [, ],
: [, ],
}
():
models = ROUTES.get(task, ROUTES[])
model models:
:
call_model(model, prompt)
Exception:
RuntimeError()