Mixed freshness. Depending on the panel, rows here are read live from elisa-core or come from a frozen copy of ELISA’s local store taken on 22 October 2026 — each panel says which, underneath itself. No agent is running.

ELISAResearch
Connecting

Agent 1

Collect market and customer evidence in the customer's own language, and map demand signals without deciding what they mean.

Agent 1

Not connectedIdle — nothing queued

Market & Customer Intelligence · Research

research.agent_1

Profile charter name: Jigyasa — a label from the Hermes profile. Nothing routes on it; routing is by id only.

Measured — state right now

Idle — nothing queued. A profile exists, its queue is empty and nothing is pending. Idle describes the queue, not a live process. This UI is not connected to a running agent and never starts one.

Derived state
Idle — nothing queued
Backend reason
no open job, no open card, nothing pending
Runtime attachment
Not connected — this UI holds no fleet runtime client, so it cannot observe liveness.
Hermes profile
research-a1
Profile built
Yes
Runtime lock
Not locked · sector dispatchable: yes
May create its own cards
No
Spec source
specs/demand.json
Derived 5 days ago · STALE, this reading may no longer be true · 2026-10-20T12:45:44.000Zfrom elisa.db:agents.runtime_locked+sectors.runnable (via dispatchable()) · elisa.db:approvals.status='pending' · elisa.db:jobs.status · kanban.db:tasks.status (assignee=profile)

Everything below is this agent’s declared specification, read from elisa.db. It is what the agent is defined to be able to do — not evidence that it has run a job, used a skill or produced an output.

Mission (declared)

Collect market and customer evidence in the customer's own language, and map demand signals without deciding what they mean.

Will not (declared, and enforced at the gate)

  • paraphrase a customer quote into a cleaner sentence; the customer's own words are the evidence and are stored verbatim with their source url and date
  • scrape linkedin.com through firecrawl-rotator — blocked on the rotator; an empty result is reported as a block, never as absent demand
  • report a demand signal from a single source, or from a source with no date; both are stop conditions
  • state an implication or a recommendation; this agent collects, research.agent_3 concludes
  • exceed the crawl budget the research plan states, or start a crawl with no plan id

Owns (record types)

  • customer_language_set
  • demand_signal
  • market_view
  • pain_point_map
  • jtbd_map

Skills (declared)

  • web

Skills deliberately withheld

  • research — research.agent_2 owns the bundle; this agent would have wanted competitor-news-monitor, and receives its output as an evidence row instead
  • seo-cluster — marketing.agent_4 owns keyword demand; a second demand model in a second sector is how two numbers appear for one question
  • note-taking — research.agent_6 owns the corpus; raw collection lands as elisa.db evidence rows first
  • social-media — sales.agent_1 owns handle lookup; listening data reaches this agent as an evidence row

Jobs (declared job types)

  • research.market.collect_customer_language
  • research.market.create_market_view
  • research.market.frame_question

MCP requirements

  • firecrawl-rotatorreadDeclared, not wiredfirecrawl_search · firecrawl_scrape · firecrawl_extract
  • wish-crmreadDeclared, not wiredlist_cold_research · cold_research_facets · research_economics · list_leads

Persona (declared)

Communication
curious, empathetic
Reasoning
evidence-first
Pushback
names the gap rather than generalising from one source

Inputs (reads)

  • research_plan_id
  • evidence_standard_id
  • decision_question
  • icp_definition_id

Outputs (produces)

  • customer_language_set_id
  • demand_signal_id
  • market_view_id
  • pain_point_map_id
  • jtbd_map_id

Approval policy

Draft only — produces drafts, never acts without a human review

Idle missions

None. This agent does nothing unprompted — there is no idle mission to run.