Add 6-tier orchestration layer with role agents, audit trail, and dashboard#47
Open
no6060fear wants to merge 3 commits into
Open
Add 6-tier orchestration layer with role agents, audit trail, and dashboard#47no6060fear wants to merge 3 commits into
no6060fear wants to merge 3 commits into
Conversation
Deliverables: - driver.py: Programmatic launcher with setup, launch, test, screenshot commands - SKILL.md: Comprehensive agent-facing documentation with gotchas and troubleshooting The driver handles: - Environment setup (Python paths, Xvfb on Linux, API keys) - Launching the app with virtual display support - Smoke tests (process alive, modules importable, config valid) - Screenshot capture for headless testing Includes full prerequisites (apt-get for Linux), build instructions, run paths for both agents and humans, and 8 detailed gotchas covering Xvfb/display, Python 3.14 protobuf, audio, Qt threading, yfinance symbols, memory management, API limits, and platform-specific screenshot issues. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
…hboard Jarvis now routes specialist work to named role agents (Eva for gold/numbers, Bobby for news, Tom for trades) running on local Ollama qwen3:14b, with a shared tool registry enforcing per-agent allowlists, confirmation gates for money moves, and a propose-don't-chain handoff system. Key additions: - core/ — 10 pure-stdlib modules: registry, confirmation, manifest, roles, role_agent, ollama_backend, handoff, audit, tradingview, __init__ - config/agents.json + tools.json — declarative agent manifests and tool metadata - dashboard/ — Streamlit read-only dashboard (agent pulse + decision log) - tests/ — 87 unit tests covering all tiers, the Ollama backend, audit trail, TradingView tool, and dashboard data layer - docs/ORCHESTRATION.md — full architecture reference Verified end-to-end on real qwen3:14b: Eva fetches live gold ($4498.73 via TradingView), Bobby proposes handoff to Tom, Tom's gate blocks until human confirms, audit.db captures every decision/tool_call/handoff for replay. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Telegram adapter (core/telegram.py): sends alerts via Bot API, scoped to eva/bobby roles. Gold watcher daemon (core/scheduler.py): checks gold price every 15 min via tradingview_ta, sends Telegram alert on moves > 0.3%, logs every heartbeat to audit.db. Both are failure-isolated. New tool: send_alert (Jarvis/Eva/Bobby can push alerts to Telegram). 100 tests pass (was 87 — added 13 for telegram + scheduler). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
core/tradingview.py) giving Eva and Tom real-time price + BUY/SELL signal + RSI/MACD/EMAcore/audit.py) recording every decision, tool call, and handoff — record-before-acting, failure-isolated writesdashboard/) — read-only team pulse showing agent status, decision log, pending handoffsVerified end-to-end on real hardware
main.pyboots cleanly with all wiring (26 tools, 3 roles, audit DB)Files changed
core/— 10 new modules (registry, confirmation, manifest, roles, role_agent, ollama_backend, handoff, audit, tradingview)config/agents.json+config/tools.json— declarative agent manifests and tool metadatadashboard/— Streamlit read-only dashboardmain.py— integrated orchestration (REGISTRY, CONFIRMATIONS, ROLE_REGISTRY, AUDIT, dispatch branches)agent/executor.py— task agent allowlist guard (de-scoped from messaging/shutdown)docs/ORCHESTRATION.md— full architecture referencetests/— 87 tests across 7 test filesTest plan
python -m unittest discover -s tests -t . -v(87 tests, all pass)python -m py_compile main.py core/*.py agent/*.py dashboard/*.py(zero errors)main.py— verify UI appears and no crashesstreamlit run dashboard/app.py— verify dashboard renders🤖 Generated with Claude Code