惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

V
Visual Studio Blog
量子位
大猫的无限游戏
大猫的无限游戏
Hugging Face - Blog
Hugging Face - Blog
S
SegmentFault 最新的问题
Blog — PlanetScale
Blog — PlanetScale
月光博客
月光博客
Google DeepMind News
Google DeepMind News
小众软件
小众软件
WordPress大学
WordPress大学
宝玉的分享
宝玉的分享
MongoDB | Blog
MongoDB | Blog
B
Blog RSS Feed
博客园 - Franky
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
B
Blog
博客园 - 聂微东
The GitHub Blog
The GitHub Blog
Recent Announcements
Recent Announcements
Y
Y Combinator Blog
Microsoft Security Blog
Microsoft Security Blog
雷峰网
雷峰网
Jina AI
Jina AI
酷 壳 – CoolShell
酷 壳 – CoolShell

Hacker News: Show HN

PurrrrrFocus: Pomodoro Timer App - App Store Workflow Engine — Multi-Step Orchestration for Bun RapidPhoto: Pro Photo Editor App - App Store GitHub - DheerG/swarms: Achieve extraordinary results with claude code across a variety of tasks SPICE simulation → oscilloscope → verification with Claude Code — Lucas Gerads Show HN: VCoding – A 5 MB native Windows IDE with no dynamic dependencies Show HN: LLMs don't hallucinate because they're bad at math, it's the format GitHub - Agent-FM/agentfm-core: AgentFM is a peer-to-peer network that turns everyday computers into a decentralized AI supercomputer. AgentFM lets you run massive AI workloads directly across a global mesh of idle CPUs and GPUs. Show HN: Tracking Top US Science Olympiad Alumni over Last 25 Years GitHub - Potarix/agent-hub: One place to talk to all your agents Show HN: Runtime security for AI agents(injection,tool abuse, data exfiltration) GitHub - dubeyKartikay/lazyspotify: Terminal Spotify client for macOS and Linux GitHub - the-banana-tool/king-louie: Easy to use GUI Personal AI Assistant. Win/Linux/Mac. Show HN I made my vacation rental bookable by AI agents–no Airbnb, 0% commission GitHub - basteez/jsf-autoreload: maven plugin to enable hot reload on jsf projects uvm32/hosts/host-gdbstub at main · ringtailsoftware/uvm32 GitHub - labsai/EDDI: Config-driven engine that turns JSON into production-grade AI agents. Multi-agent orchestration, 12+ LLM providers, MCP/A2A protocols, RAG, persistent memory, and enterprise compliance (EU AI Act, GDPR, HIPAA). Built on Quarkus. GitHub - glitchnsec/fortyone-oss: AI Executive Assistant Platform Quickstart | Alien GitHub - muxshed/shed: One stream in, or many. Every destination, simultaneously. No cloud middleman, no per-channel fees, no limits. GitHub - ocrbase-hq/ocrbase: 📄 PDF/IMG ->.MD/JSON Document OCR API for PaddleOCR and GLMOCR. Self-hostable. GitHub - impactjo/home-memory: MCP server that lets your AI assistant remember everything about your home. GitHub - Sets88/dbcls: DbCls is a powerful terminal database client that supports various databases GitHub - neptun2000/heor-agent-mcp GitHub - SeanFDZ/macmind: Single-layer transformer in HyperTalk for the classic Macintosh RollQuation: Math Puzzles - Apps on Google Play GitHub - dropbox/witchcraft Show HN: Agent-cache – Multi-tier LLM/tool/session caching for Valkey and Redis GitHub - opentalon/opentalon: OpenTalon is an open-source platform built from the ground up in Go as a robust alternative to OpenClaw LinkedIn™ 职位抓取工具 - Chrome 应用商店
GitHub - agno-agi/scout: Open Source Company Brain
ashpreet-bed · 2026-04-30 · via Hacker News: Show HN

Scout: Company Intelligence Agent

Scout is an open-source company intelligence agent. It navigates live information sources (web, slack, drive, wiki, CRM, MCP servers) to assemble context on demand - and builds its own wiki and CRM as it learns about your company.

YC's Summer 2026 RFS named "Company Brain" and "AI Operating System for Companies" — the same idea from two angles: pull knowledge out of fragmented sources and turn it into something AI can act on. The brain is the data layer. The OS runs on top of it. Neither exists as a finished product today, but the pieces do.

Scout stitches them together using patterns that already work: navigation over search, context providers, agentic SQL, and persistent memory.

Navigation over search. The default move when working with knowledge sources is to ingest everything into a vector db, chunk, embed, and pray. There are many reasons this doesn't work. Coding agents figured out the right approach. They navigate: ls, grep, open the file, follow the import. Scout does the same thing across Slack, Drive, and the rest.

Scout maintains its own wiki and CRM. Most information Scout learns from working with you is perfect for a wiki and CRM. "Josh from Anthropic shared a new RLM paper". Scout adds Josh to the CRM, parses the paper into the wiki, and links them.

Quick start

Prerequisite: Docker Desktop installed and running (install guide).

git clone https://github.com/agno-agi/scout && cd scout

cp example.env .env
# set OPENAI_API_KEY in .env

docker compose up -d --build

Scout is now running at http://localhost:8000.

Chat with Scout

  1. Open os.agno.com and log in.
  2. Click Add OS, choose Local, enter http://localhost:8000, then Connect.
  3. Try the pre-configured prompts.
scout-agentos.mp4

Chat with Scout in Slack

Scout is designed to live in Slack as your teammate. Follow docs/SLACK_CONNECT.md to add Scout to your slack workspace.

scout-slack.mp4

How Scout works

Scout is a single agent with multiple context providers. Each context provider exposes 2 natural-language tools to interact with an information source:

  • query_<source>: reads
  • update_<source>: writes (when supported)

This thin layer solves three problems that hit any agent with a diverse tool surface: context pollution from too many tools, degrading performance from overlapping scopes, and the main agent forgetting its job because its context is all tool quirks.

The win is that a sub-agent behind each provider owns the source's quirks. Scout sees query_slack. Behind it, a sub-agent knows to look up the user before DMing, paginate by cursor, and prefer conversations.replies for threads. Scout's context never sees any of that.

"Find the latest benchmark numbers for model X."query_web, cites sources.

"Save that as a note."update_crm → write sub-agent INSERTs into scout.scout_notes.

"File a runbook for incident response."update_knowledge → wiki sub-agent writes a markdown page under wiki/knowledge/runbooks/.

"Track my coffee consumption: flat white, extra shot."update_crm → write sub-agent creates scout.scout_coffee_orders and inserts the row. Schema on demand.

"Draft a Slack message announcing the launch."query_voice first to load the style guide, then drafts in that voice.

Context Providers

A ContextProvider exposes an information source to the agent.

Provider Trigger Tools
WebContextProvider always on query_web
WorkspaceContextProvider always on query_workspace — rooted at the scout repo, so Scout can answer questions about its own codebase
DatabaseContextProvider (CRM) always on query_crm, update_crm — contacts, projects, notes, follow-ups
WikiContextProvider (knowledge) always on query_knowledge, update_knowledge — Scout's prose memory
WikiContextProvider (voice) always on query_voice — code-managed style guide for emails, Slack, X, long-form
SlackContextProvider SLACK_BOT_TOKEN query_slack — read-only access to messages, channel history, threads, users
GDriveContextProvider GOOGLE_SERVICE_ACCOUNT_FILE query_gdrive — read-only access to files, folders, contents
MCPContextProvider per-server in scout/contexts.py one query_mcp_<slug> per registered server (stdio / SSE / streamable-HTTP)

The Web backend uses the Parallel SDK when PARALLEL_API_KEY is set, otherwise the free Parallel MCP server.

Setup guides:

Evals

python -m evals wiring             # code-level invariants (no LLM)
python -m evals                    # behavioral cases, in-process
python -m evals --case <id>        # single case
python -m evals judges             # LLM-scored quality tier

See docs/EVALS.md for the full picture.

Deploy to Railway

Scout runs on any cloud provider. We provide scripts for Railway.

Prereqs: Railway CLI installed and railway login run.

1. Set up your production env

cp .env .env.production

Edit .env.production if any values should differ from local (e.g. a different Slack workspace, larger model budget, production-only credentials). The Railway scripts read .env.production first and fall back to .env.

.env.production is gitignored. Don't commit it.

2. Provision and deploy

./scripts/railway/up.sh        # first-time: Postgres + app service

Scripts to update env and redeploy after code changes

./scripts/railway/env.sh       # sync .env.production → Railway
./scripts/railway/redeploy.sh  # push code updates after up.sh

3. Your first deploy will fail. That's expected.

Production endpoints require RBAC authorization by default (Scout enables it when RUNTIME_ENV=prd). Without a JWT_VERIFICATION_KEY, the app refuses to serve traffic. Scout's job is to keep your company data off the public web. The fix is to generate a key from AgentOS and set it in your env.

4. Get your verification key

  1. Open os.agno.com, click Add OSLive, and enter your Railway domain. 2. Enable Token Based Authorization
  2. Paste the public key into .env.production (the full PEM block, no surrounding quotes):
JWT_VERIFICATION_KEY=-----BEGIN PUBLIC KEY-----
MIIBIjANBgkq...
-----END PUBLIC KEY-----
  1. Sync and redeploy:
./scripts/railway/env.sh

Railway will auto-deploy when values change, but if you need to redeploy manually:

./scripts/railway/redeploy.sh

Once redeployed, AgentOS connects, Scout starts serving requests, and every API call (UI, Slack, scheduled tasks) runs signed-and-verified from here on. The Agno control plane handles JWT issuance, session management, traces, metrics, and the web UI. Scout just verifies the JWTs it sees. See the AgentOS Security docs for details.

Opting out of JWT verification (not recommended)

If you must run production without auth (e.g. inside a private VPC behind another auth layer), flip authorization=False at app/main.py:67 and redeploy. We strongly recommend keeping authorization on for any deploy that holds real company data. Without it, anyone who guesses your Railway domain can query your CRM, wiki, and connected sources.

5. Point Slack at the new URL

  1. Copy your Railway domain.
  2. In your Slack App settingsEvent Subscriptions, set the Request URL to https://<your-railway-domain>/slack/events.
  3. Wait for Slack to verify.

If you were running ngrok locally, you can shut it down. Slack will route to the deployed instance.

6. Use GitHub for the knowledge wiki (recommended)

The filesystem wiki resets on every container restart. For production, swap to a Git-backed wiki so pages persist with an audit trail and reviewers can comment. Full setup guide in docs/WIKI_GIT.md.

  1. Create a private wiki repo and mint a fine-grained PAT (Contents: Read and write, scoped to that one repo).
  2. Add to .env.production:
WIKI_REPO_URL=https://github.com/your-org/your-wiki.git
WIKI_GITHUB_TOKEN=github_pat_***
  1. Sync and redeploy:
./scripts/railway/env.sh

Scout detects both env vars on startup and switches the knowledge wiki to GitBackend automatically — no code changes needed. On boot you'll see Knowledge wiki: GitBackend (<repo_url>) in the logs.

Railway will auto-deploy when values change, but if you need to redeploy manually:

./scripts/railway/redeploy.sh

7. Connect Railway to GitHub for auto-deploys

So far every code update needs ./scripts/railway/redeploy.sh. To auto-deploy on every push to main instead, connect the repo in Railway:

  1. Open the Railway dashboard → your project → the scout service → Settings.
  2. Under Source, click Connect Repo and pick the repo where Scout lives.
  3. Set the deploy branch to main, then save.

Every push to main now triggers a fresh build and rolling deploy. ./scripts/railway/env.sh is still how you sync .env.production changes.

Scout deploys with 2 replicas by default — configured in railway.json ("numReplicas": 2, 4Gi memory, 2 vCPU per replica). Two replicas give you zero-downtime rolling deploys and modest fault tolerance. Bump numReplicas and limits as your usage grows.

What's next

  • Scheduled tasks. Scout surfaces pending follow-ups automatically (e.g. a daily 8am summary of scout_followups where due_at <= NOW()).
  • Proactive provider actions. update_slack, update_github running on cron, not just on demand.
  • GitHub, Gmail, Calendar providers. Built and verified on feat/slack-interface. Landing in the next release once we've tested with real tokens.

Architecture

Built on Agno and AgentOS (docs.agno.com).

Implementation notes: AGENTS.md.