{"id":"3a258502-57bb-4038-a45b-2db1e68c34ea","entityType":"agent","slug":"crewai-yennanliu-agent-office-system","name":"agent_office_system","canonicalUrl":"https://www.xpersona.co/agent/crewai-yennanliu-agent-office-system","canonicalPath":"/agent/crewai-yennanliu-agent-office-system","generatedAt":"2026-10-10T03:57:53.712Z","source":"GITHUB_REPOS","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"editorial-content","verified":true,"confidence":"high","updatedAt":"2026-10-09T21:25:51.600Z","emptyReason":null},"description":"Multi-agent office automation built with CrewAI, OpenAI GPT-4o, and Gmail. Managed with uv, with SQLite run tracking and a Streamlit dashboard. Agent Office System Multi-agent office automation built on **CrewAI**, **OpenAI GPT-4o**, and **Gmail**. Managed with **uv** (Python). All runs are tracked in SQLite and visible in a Streamlit dashboard. <p align=\"center\"><img src =\"./doc/pic/demo_3.png\" ></p> <p align=\"center\"><img src =\"./doc/pic/demo_2.png\" ></p> --- Architecture **EmailCrew** — agent drafts body from natural language intent, sends via Gmail SMTP.","descriptionLabel":"Technical summary","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 1 GitHub stars reported by the source. Last updated 10/9/2026.","installCommand":null,"sourceUrl":"https://github.com/yennanliu/agent_office_system","homepage":null,"primaryLinks":[{"label":"View Source","url":"https://github.com/yennanliu/agent_office_system","kind":"source"}],"safetyScore":66,"overallRank":19.8,"popularityScore":8,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"Multi-agent office automation built with CrewAI, OpenAI GPT-4o, and Gmail. Managed with uv, with SQLite run tracking and a Streamlit dashboard. Agent Office Sys"},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-09T21:25:51.600Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[{"label":"crewai","status":"self-declared"},{"label":"multi-agent","status":"self-declared"}],"verifiedCount":0,"selfDeclaredCount":3,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"},{"key":"crewai","type":"capability","support":"supported","confidenceSource":"profile","notes":"Declared in agent profile metadata"},{"key":"multi-agent","type":"capability","support":"supported","confidenceSource":"profile","notes":"Declared in agent profile metadata"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile capability:crewai|supported|profile capability:multi-agent|supported|profile"}},"adoption":{"evidence":{"source":"GITHUB REPOS","verified":false,"confidence":"medium","updatedAt":"2026-10-09T21:25:51.600Z","emptyReason":null},"stars":1,"forks":0,"downloads":null,"packageName":null,"latestVersion":null,"tractionLabel":"1 GitHub stars"},"release":{"evidence":{"source":"agent-index","verified":false,"confidence":"medium","updatedAt":"2026-10-09T21:25:51.595Z","emptyReason":null},"lastUpdatedAt":"2026-10-09T21:25:51.600Z","lastCrawledAt":"2026-10-09T21:25:51.595Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-16T21:25:51.595Z","lastVerifiedAt":null,"highlights":[]},"execution":{"evidence":{"source":"GITHUB REPOS","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":null,"setupComplexity":"low","setupSteps":["Setup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.","Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/crewai-yennanliu-agent-office-system/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/crewai-yennanliu-agent-office-system/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/crewai-yennanliu-agent-office-system/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/crewai-yennanliu-agent-office-system/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/crewai-yennanliu-agent-office-system/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/crewai-yennanliu-agent-office-system/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"GITHUB_REPOS","generatedAt":"2026-10-10T03:57:53.711Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/crewai-yennanliu-agent-office-system/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/crewai-yennanliu-agent-office-system/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/crewai-yennanliu-agent-office-system/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/crewai-yennanliu-agent-office-system/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"GITHUB REPOS","verified":false,"confidence":"high","updatedAt":"2026-10-09T21:25:51.600Z","emptyReason":null},"readme":"# Agent Office System\n\nMulti-agent office automation built on **CrewAI**, **OpenAI GPT-4o**, and **Gmail**. Managed with **uv** (Python). All runs are tracked in SQLite and visible in a Streamlit dashboard.\n\n\n<p align=\"center\"><img src =\"./doc/pic/demo_3.png\" ></p>\n<p align=\"center\"><img src =\"./doc/pic/demo_2.png\" ></p>\n\n\n---\n\n## Architecture\n\n```\n┌─────────────────────────────────────────────────────────────────────────────┐\n│                              main.py (CLI)                                  │\n│  email │ summarize │ stock │ inbox-summary │ scheduler │ ui  subcommands    │\n└───┬──────────┬──────────┬──────────┬───────────┬────────────┬───────────────┘\n    │          │          │          │           │            │\n    ▼          ▼          ▼          ▼           ▼            ▼\nEmailCrew  DocSummary  StockSummary  Inbox    Scheduler   Streamlit\n           Crew        Crew          Summary  Crew        Dashboard\n    │          │          │          Crew     │\n    └──────┬───┘          │            │  APScheduler\n           │              │            │  + schedule.yaml\n           ▼              ▼            ▼\n     CrewAI Agents\n┌──────────────────────────────────────────────────────┐\n│ Gmail Email Assistant  │ GmailSendTool               │\n│                        │ GmailReadTool               │\n├──────────────────────────────────────────────────────┤\n│ Document Analyst       │ DocReaderTool               │\n│                        │ GmailSendTool               │\n├──────────────────────────────────────────────────────┤\n│ US Stock Analyst       │ StockDataTool (yfinance)    │\n│                        │ GmailSendTool               │\n├──────────────────────────────────────────────────────┤\n│ Inbox Summarizer       │ GmailReadTool               │\n│                        │ ReportSaverTool             │\n└──────────────────────────────────────────────────────┘\n           │\n           ▼\n     LLM: OpenAI GPT-4o\n           │\n           ▼\n┌──────────────────────────────────────────────────────┐\n│ SQLite  runs.db  (token cost, status, timing)        │\n└──────────────────────────────────────────────────────┘\n```\n\n**EmailCrew** — agent drafts body from natural language intent, sends via Gmail SMTP.\n\n**DocSummaryCrew** — doc agent reads PDF/DOCX/TXT → structured summary → email agent sends it.\n\n**StockSummaryCrew** — stock agent fetches live data via yfinance, produces Buy/Hold/Sell analysis per ticker → email agent sends the investment summary.\n\n**InboxSummaryCrew** — inbox summarizer agent reads recent Gmail messages, clusters them by topic, flags action items, saves a plain-text report to `output/`, and optionally emails the report.\n\n**SchedulerCrew** — loads `config/schedule.yaml` on startup, registers APScheduler cron jobs (`coalesce=True`, `max_instances=1`), dispatches to any crew on each tick.\n\n**Run tracking** — every `crew.kickoff()` is wrapped by `tracker.py`: records name, job type, agents, status, token counts, and estimated GPT-4o cost into `runs.db`.\n\n---\n\n## Key Functions\n\n| Module | Class / Function | What it does |\n|---|---|---|\n| `crews/email_crew.py` | `EmailCrew.run(to, subject, intent, attachments?)` | Draft + send a Gmail email, optionally with file attachments |\n| `crews/doc_summary_crew.py` | `DocSummaryCrew.run(doc_path, recipients, notes?)` | Summarize a document and email the result |\n| `crews/stock_summary_crew.py` | `StockSummaryCrew.run(tickers, recipients)` | Analyze US stocks and email an investment summary |\n| `crews/inbox_summary_crew.py` | `InboxSummaryCrew.run(recipients?, output_dir?, max_emails?)` | Read recent Gmail messages, save a structured summary to `output/`, optionally email it |\n| `crews/scheduler_crew.py` | `SchedulerCrew.start()` | Load `schedule.yaml` and start background cron jobs |\n| `tools/gmail_tool.py` | `GmailSendTool` | Send email via Gmail SMTP (supports attachments) |\n| `tools/gmail_tool.py` | `GmailReadTool` | Read inbox messages via Gmail IMAP |\n| `tools/stock_tool.py` | `StockDataTool` | Fetch live price, valuation, growth, analyst data via yfinance |\n| `tools/doc_reader_tool.py` | `DocReaderTool` | Extract text from PDF, DOCX, TXT (local path or URL) |\n| `tools/report_saver_tool.py` | `ReportSaverTool` | Save a text report to a local `.txt` file with an auto-timestamped filename |\n| `tools/cron_tool.py` | `register_job`, `start_scheduler` | APScheduler wrappers used by `SchedulerCrew` |\n| `db/database.py` | `init_db`, `insert_run`, `update_run`, `get_all_runs` | SQLite CRUD for run tracking |\n| `db/tracker.py` | `track_crew_run(name, job_type, agents, crew)` | Wrap any crew run with automatic DB tracking |\n| `ui/dashboard.py` | Streamlit app | Live dashboard: metrics, filterable run table, token/cost charts |\n\n---\n\n## How to Run\n\n### 1. Prerequisites\n\n- Python 3.11–3.13 (3.14 not yet supported by chromadb)\n- [uv](https://docs.astral.sh/uv/) installed\n- OpenAI API key\n- Gmail account with an App Password (see Config section)\n\n### 2. Install\n\n```bash\nuv sync\n```\n\n### 3. Configure secrets\n\n```bash\ncp .env.example .env\n# Fill in OPENAI_API_KEY, GMAIL_ADDRESS, GMAIL_APP_PASSWORD\n```\n\n### 4. Commands\n\n**Send an email**\n```bash\nuv run agent-office email \\\n  --to \"colleague@gmail.com\" \\\n  --subject \"Project Update\" \\\n  --intent \"Write a brief update saying the Q2 report is ready for review\"\n```\n\n**Send an email with attachments**\n```bash\n# Single file\nuv run agent-office email \\\n  --to \"colleague@gmail.com\" \\\n  --subject \"Q2 Report\" \\\n  --intent \"Q2 report is ready for review\" \\\n  --attach \"/path/to/q2.pdf\"\n\n# Multiple files (repeat --attach)\nuv run agent-office email \\\n  --to \"colleague@gmail.com\" \\\n  --subject \"Q2 Report\" \\\n  --intent \"Q2 report is ready for review\" \\\n  --attach \"/path/to/q2.pdf\" \\\n  --attach \"/path/to/appendix.xlsx\"\n```\n\n**Summarize a document and email it**\n```bash\nuv run agent-office summarize \\\n  --doc \"/path/to/report.pdf\" \\\n  --to \"manager@gmail.com,team@gmail.com\" \\\n  --notes \"Focus on the financial section\"\n```\n\n**Analyze US stocks and email an investment summary**\n```bash\n# Single ticker\nuv run agent-office stock \\\n  --ticker AAPL \\\n  --to \"investor@gmail.com\"\n\n# Multiple tickers\nuv run agent-office stock \\\n  --ticker AAPL --ticker NVDA --ticker MSFT \\\n  --to \"investor@gmail.com\"\n```\n\n**Read and summarize recent Gmail inbox messages**\n```bash\n# Save report to output/ (default) — no email sent\nuv run agent-office inbox-summary\n\n# Read 20 emails, save to a custom folder\nuv run agent-office inbox-summary --max-emails 20 --output-dir ./reports\n\n# Save locally AND email the report\nuv run agent-office inbox-summary --to \"you@gmail.com\"\n\n# All options combined\nuv run agent-office inbox-summary \\\n  --to \"you@gmail.com,team@gmail.com\" \\\n  --max-emails 15 \\\n  --output-dir ./reports\n```\n\nThe report is always saved as a `.txt` file under `--output-dir` with a timestamped filename (`inbox_summary_YYYYMMDD_HHMMSS.txt`). The structured report contains:\n\n1. **Overview** — total emails, date range, top senders\n2. **By-Topic Groups** — emails clustered into themes (Finance, HR, Engineering, etc.)\n3. **Action Items** — emails requiring a reply or follow-up\n4. **FYI Only** — informational emails with no action needed\n\n**Start the cron scheduler** (runs until Ctrl+C)\n```bash\nuv run agent-office scheduler\n\n# Custom schedule config:\nuv run agent-office scheduler --config /path/to/my_schedule.yaml\n```\n\n**Launch the run-tracking dashboard**\n```bash\nuv run agent-office ui\n# Opens Streamlit at http://localhost:8501\n```\n\n### 5. Run tests\n\n```bash\nuv run pytest tests/ -v\n```\n\n---\n\n## Config\n\n### `.env` — secrets\n\n```dotenv\n# OpenAI\nOPENAI_API_KEY=sk-...\n\n# Gmail (SMTP + IMAP via App Password)\nGMAIL_ADDRESS=you@gmail.com\nGMAIL_APP_PASSWORD=xxxxxxxxxxxxxxxx   # 16 chars, no spaces\n```\n\n> `.env` is never committed. Add it to `.gitignore`.\n\n### Gmail App Password setup\n\n1. Enable **2-Step Verification** on your Google account\n2. Go to [myaccount.google.com/apppasswords](https://myaccount.google.com/apppasswords)\n3. Create an App Password — Google shows it as `xxxx xxxx xxxx xxxx`\n4. Copy into `.env` **without spaces**: `GMAIL_APP_PASSWORD=xxxxxxxxxxxxxxxx`\n\n> No OAuth2 flow or API console required — App Password works with standard SMTP/IMAP.\n\n### `src/agent_office/config/schedule.yaml` — cron jobs\n\n```yaml\njobs:\n  - id: weekly_report_summary\n    cron: \"0 8 * * MON\"        # Every Monday 8 AM\n    crew: DocSummaryCrew\n    params:\n      doc_path: \"/reports/weekly.pdf\"\n      recipients:\n        - manager@gmail.com\n      notes: \"Highlight any KPI misses\"\n\n  - id: daily_stock_digest\n    cron: \"0 7 * * MON-FRI\"    # Weekdays at 7 AM\n    crew: StockSummaryCrew\n    params:\n      tickers:\n        - AAPL\n        - NVDA\n        - MSFT\n      recipients:\n        - investor@gmail.com\n\n  - id: daily_inbox_digest\n    cron: \"0 9 * * *\"          # Every day at 9 AM\n    crew: EmailCrew\n    params:\n      to: \"me@gmail.com\"\n      subject: \"Daily Inbox Digest\"\n      task: \"Summarize unread emails from the last 24 hours\"\n```\n\n**Cron format:** `minute hour day month day_of_week`\n\n**Supported crew values:** `EmailCrew`, `DocSummaryCrew`, `StockSummaryCrew`, `InboxSummaryCrew`\n\n### Run database\n\nAll runs are saved to `runs.db` at the project root. Each record stores:\n\n| Field | Description |\n|---|---|\n| `name` | Human-readable run label |\n| `job_type` | Crew class name |\n| `agents` | Comma-separated agent roles |\n| `started_at` / `finished_at` | UTC timestamps |\n| `status` | `running` / `success` / `failed` |\n| `total_tokens` | Combined prompt + completion tokens |\n| `estimated_cost_usd` | Calculated at GPT-4o rates ($2.50/1M input, $10/1M output) |\n| `error` | Exception message if failed |\n","readmeExcerpt":"Agent Office System Multi-agent office automation built on **CrewAI**, **OpenAI GPT-4o**, and **Gmail**. Managed with **uv** (Python). All runs are tracked in SQLite and visible in a Streamlit dashboard. <p align=\"center\"><img src =\"./doc/pic/demo_3.png\" ></p> <p align=\"center\"><img src =\"./doc/pic/demo_2.png\" ></p> --- Architecture **EmailCrew** — agent drafts body from natural language intent, sends via Gmail SMTP.","codeSnippets":[],"executableExamples":[{"language":"text","snippet":"┌─────────────────────────────────────────────────────────────────────────────┐\n│                              main.py (CLI)                                  │\n│  email │ summarize │ stock │ inbox-summary │ scheduler │ ui  subcommands    │\n└───┬──────────┬──────────┬──────────┬───────────┬────────────┬───────────────┘\n    │          │          │          │           │            │\n    ▼          ▼          ▼          ▼           ▼            ▼\nEmailCrew  DocSummary  StockSummary  Inbox    Scheduler   Streamlit\n           Crew        Crew          Summary  Crew        Dashboard\n    │          │          │          Crew     │\n    └──────┬───┘          │            │  APScheduler\n           │              │            │  + schedule.yaml\n           ▼              ▼            ▼\n     CrewAI Agents\n┌──────────────────────────────────────────────────────┐\n│ Gmail Email Assistant  │ GmailSendTool               │\n│                        │ GmailReadTool               │\n├──────────────────────────────────────────────────────┤\n│ Document Analyst       │ DocReaderTool               │\n│                        │ GmailSendTool               │\n├──────────────────────────────────────────────────────┤\n│ US Stock Analyst       │ StockDataTool (yfinance)    │\n│                        │ GmailSendTool               │\n├──────────────────────────────────────────────────────┤\n│ Inbox Summarizer       │ GmailReadTool               │\n│                        │ ReportSaverTool             │\n└──────────────────────────────────────────────────────┘\n           │\n           ▼\n     LLM: OpenAI GPT-4o\n           │\n           ▼\n┌──────────────────────────────────────────────────────┐\n│ SQLite  runs.db  (token cost, status, timing)        │\n└──────────────────────────────────────────────────────┘"},{"language":"bash","snippet":"uv sync"},{"language":"bash","snippet":"cp .env.example .env\n# Fill in OPENAI_API_KEY, GMAIL_ADDRESS, GMAIL_APP_PASSWORD"},{"language":"bash","snippet":"uv run agent-office email \\\n  --to \"colleague@gmail.com\" \\\n  --subject \"Project Update\" \\\n  --intent \"Write a brief update saying the Q2 report is ready for review\""},{"language":"bash","snippet":"# Single file\nuv run agent-office email \\\n  --to \"colleague@gmail.com\" \\\n  --subject \"Q2 Report\" \\\n  --intent \"Q2 report is ready for review\" \\\n  --attach \"/path/to/q2.pdf\"\n\n# Multiple files (repeat --attach)\nuv run agent-office email \\\n  --to \"colleague@gmail.com\" \\\n  --subject \"Q2 Report\" \\\n  --intent \"Q2 report is ready for review\" \\\n  --attach \"/path/to/q2.pdf\" \\\n  --attach \"/path/to/appendix.xlsx\""},{"language":"bash","snippet":"uv run agent-office summarize \\\n  --doc \"/path/to/report.pdf\" \\\n  --to \"manager@gmail.com,team@gmail.com\" \\\n  --notes \"Focus on the financial section\""}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[],"languages":["python"],"docsSourceLabel":"GITHUB REPOS","editorialOverview":"Multi-agent office automation built with CrewAI, OpenAI GPT-4o, and Gmail. Managed with uv, with SQLite run tracking and a Streamlit dashboard. Agent Office System Multi-agent office automation built on **CrewAI**, **OpenAI GPT-4o**, and **Gmail**. Managed with **uv** (Python). All runs are tracked in SQLite and visible in a Streamlit dashboard. <p align=\"center\"><img src =\"./doc/pic/demo_3.png\" ></p> <p align=\"center\"><img src =\"./doc/pic/demo_2.png\" ></p> --- Architecture **EmailCrew** — agent drafts body from natural language intent, sends via Gmail SMTP.","editorialQuality":{"score":100,"threshold":65,"status":"ready","wordCount":395,"uniquenessScore":63,"reasons":[]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-09T21:25:51.600Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-09T21:25:51.600Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-10T03:57:53.712Z","emptyReason":null},"items":[{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-10-09T19:11:12.944Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/github_repos","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}