Research

Research Agents

Publishable personas that take a second pass at a feed item or a chat question. They use the knowledge graph and source documents — they do not invent relationships.

House roster

  • Tinfoil Cat — skeptic. Decoys, coded language, the dark side of a transcript.
  • Chess Master — geopolitics. Second-order effects from chokepoints and sanctions onto commodities.
  • Farmer Bob — grains and softs. Acres, yields, basis, not drought tweets.
  • Rancher Sammy — livestock. Herd cycles, placements, packer margins, the corn ration.
  • Risky Rick — volatility. Realized vs implied, event vol, crowding.
  • Barrel Bill — energy. Inventories, cracks, storage, real flow constraints.
  • COT Carl — positioning. CFTC and flow prints; extremes are context, not a fade.
  • Scout — equity discovery. Commodity-adjacent screens for relative value, pre-breakout coils, and a price/volume flow proxy — then falsifies.

House agents are published and usable by any signed-in account. Using them does not consume your custom-persona slot. The model and message quota still follow the caller.

How tools work

Personas do not get different tool implementations. When a research-agent chat streams, ChatStreamJob sees chat.research? and attaches ResearchAgentToolRegistry: knowledge-graph search / concept / path, mermaid, source-document lookup, document search, ticker and commodity lookup, futures and equity quotes, bars, indicators, and equity screening tools (list_related_equities, screen_equities, get_equity_flow, get_equity_setup, get_equity_fundamentals). The model decides which of those to call. The persona only changes the system prompt (research_agent.md.erb wrapping that agent's instructions).

Generic research chats use a wider ToolRegistry, including list_research_agents and call_research_agent. Those two are omitted from persona chats so a skeptic cannot recurse into another persona. Research agents also do not get raw Cypher (graph_query) or write tools.

tool_profile (general_research vs skeptical_research) is a label for the UI. It does not swap the tool list.

Who gets what

  • Free — 1 custom persona, starter (low-level) models, same global chat message trial.
  • Arc Research Starter — 2 personas, higher-level models.
  • Admin — unlimited personas and models.

Visibility matches feeds and reports: private, subscribers, or published.

Feed analysis

Attach a persona to a feed you own. New matching YouTube videos (and other completed runs) can auto-run that persona. On an individual feed item, open Analyze to launch a run by hand. The write-up is stored as a research_agent_analysis report next to the official insight.

Called by chats

Start a chat as a persona from New Chat, or ask a generic research chat to use list_research_agents and call_research_agent.