.claude/skills/juliaz-agent-architect/SKILL.md
Architecture patterns and anti-patterns for Julia's multi-agent system. Trigger when making architectural decisions — adding agents, changing message flow, redesigning tool registries, or evaluating the system's structure. Also trigger for: 'architecture', 'system design', 'how should agents work together', 'add a new agent', 'agent patterns', or any structural question about the multi-agent system.
npx skillsauth add abzhaw/juliaz_agents juliaz-agent-architectInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Architecture patterns for the juliaz_agents system. Adapted from
ai-agents-architect.
Both Julia agents use Reason-Act-Observe:
Orchestrator: Up to 5 tool iterations per message (claude.ts, openai.ts)
Frontend: Up to 5 steps via stopWhen: stepCountIs(5)
The bridge is the central message hub. All inter-agent communication flows through it. No agent talks directly to another agent (except frontend → cowork-mcp for delegation, which is a direct HTTP call, not inter-agent messaging).
OpenClaw is a protocol gateway: translates between Telegram's API and the bridge's REST/MCP interface. It doesn't make decisions — it routes messages.
Bad: Frontend Julia and Orchestrator Julia are both separate LLM instances making independent decisions with different tool sets. Good: One orchestrator brain, multiple interfaces that route to it.
Bad: Giving an agent 10+ tools. The LLM loses accuracy in tool selection. Good: 3-5 focused tools per agent. Current: Orchestrator has 2 (expanding to 4), Frontend has 3 (expanding to 4).
Bad: Agent loops indefinitely trying to accomplish a task. Good: Max iteration limits (5 in both agents), timeouts on all HTTP calls (30-60s).
Bad: Storing every conversation turn in long-term memory.
Good: Selective memory extraction via memory-keeper.ts — only STORY, FEELING, MOMENT, WISH, REFLECTION.
Bad: Tool returns empty string on error.
Good: Every tool returns a clear error message: "Email failed (exit 1): connection refused".
| Question | New Agent | New Tool | |----------|-----------|----------| | Does it need its own LLM reasoning? | Yes → New agent | No → New tool | | Does it need its own conversation state? | Yes → New agent | No → New tool | | Does it need to run on a different schedule? | Yes → New agent | No → New tool | | Can the orchestrator handle it? | No → New agent | Yes → New tool | | Is it just an API call? | No | Yes → New tool |
web-*, numeric) to identify message sources| File | Architectural Role |
|------|-------------------|
| julia/bridge/src/index.ts | Message hub — all routing flows through here |
| julia/orchestrator/src/index.ts | Main poll loop — the heartbeat of the system |
| julia/orchestrator/src/tools.ts | Tool registry — what the brain can do |
| julia/orchestrator/src/prompt.ts | Brain identity — what the brain knows |
| julia/frontend/server.ts | Web interface — conversation + action delegation |
| julia/openclaw/skills/julia-relay/SKILL.md | Gateway relay — Telegram ↔ bridge |
development
Fortschrittsverfolgung der Masterarbeit. Wortanzahl pro Kapitel, Fertigstellungsgrad, fehlende Elemente, Deadlines. Haelt den Ueberblick.
development
Kapitelarchitektur und Gliederung der Masterarbeit. Verwaltet die Struktur, schlaegt vor wo Inhalte hingehoeren, validiert den logischen Fluss zwischen Kapiteln.
tools
Konvertiert Protokolleinträge und Session-Logs in thesis-fähiges deutsches Narrativ. Transformiert Entwicklungsdokumentation in akademische Prosa.
research
Sucht und analysiert akademische Literatur. Findet relevante Papers, erstellt strukturierte Zusammenfassungen. Zitiert NIEMALS — schlaegt nur vor.