Agentic demo flow: CRM data → slides via intent detection + chaining #16

Closed
opened 2026-05-04 09:30:31 +00:00 by casper-stevens · 1 comment
Member

Goal

Build a working end-to-end agentic flow where a user can express intent in natural language and the system executes a multi-step CRM → slides workflow locally. This is the primary demo story for the Hero stack.

Target example:

"Find the top 5 CRM opportunities and generate slides."

What already exists

  • analyze_intent in assistant.rs — structured JSON intent extraction (action, entity_type, parameters, confidence)
  • build_entity_context / build_entity_summary in handlers/mod.rs — CRM entity data aggregation
  • Flow, FlowStep, FlowActor in ai/flow.rs — step-based flow scaffolding
  • CRM dashboard, deal/opportunity/company/contact models

What is missing

  1. Intent → action execution chain — after analyze_intent returns, there is no dispatcher that maps the intent to a concrete multi-step execution (query CRM → format data → call hero_slides)
  2. hero_slides integration — no connection from hero_biz to hero_slides SDK to trigger slide generation from CRM data
  3. Intent chaining — sequential execution of multiple intents (find opportunities → rank → generate slides) is not wired up
  4. Local execution — data must stay inside the environment; no leaking to external services

Acceptance criteria

  • User types a natural language request in the hero_biz chat UI
  • analyze_intent detects the intent and required entity type
  • System queries the relevant CRM data (e.g. top N opportunities by value)
  • Data is passed to hero_slides to generate a presentation
  • Result (slide deck link/preview) is returned to the user in the chat UI
  • All execution is local; no data leaves the environment

Notes

  • Depends on issue #15 (AI Broker routing) being resolved first, or can be developed in parallel with a local provider fallback
  • Per meeting: prioritize local machine first, then Hetzner
  • Meeting: Engineering flow / Ubuntu 4 May — Sections 4, 6, 49 (Timur Priority 1), 53
## Goal Build a working end-to-end agentic flow where a user can express intent in natural language and the system executes a multi-step CRM → slides workflow locally. This is the primary demo story for the Hero stack. **Target example:** > "Find the top 5 CRM opportunities and generate slides." ## What already exists - `analyze_intent` in `assistant.rs` — structured JSON intent extraction (action, entity_type, parameters, confidence) - `build_entity_context` / `build_entity_summary` in `handlers/mod.rs` — CRM entity data aggregation - `Flow`, `FlowStep`, `FlowActor` in `ai/flow.rs` — step-based flow scaffolding - CRM dashboard, deal/opportunity/company/contact models ## What is missing 1. **Intent → action execution chain** — after `analyze_intent` returns, there is no dispatcher that maps the intent to a concrete multi-step execution (query CRM → format data → call hero_slides) 2. **hero_slides integration** — no connection from hero_biz to `hero_slides` SDK to trigger slide generation from CRM data 3. **Intent chaining** — sequential execution of multiple intents (find opportunities → rank → generate slides) is not wired up 4. **Local execution** — data must stay inside the environment; no leaking to external services ## Acceptance criteria - [ ] User types a natural language request in the hero_biz chat UI - [ ] `analyze_intent` detects the intent and required entity type - [ ] System queries the relevant CRM data (e.g. top N opportunities by value) - [ ] Data is passed to `hero_slides` to generate a presentation - [ ] Result (slide deck link/preview) is returned to the user in the chat UI - [ ] All execution is local; no data leaves the environment ## Notes - Depends on issue #15 (AI Broker routing) being resolved first, or can be developed in parallel with a local provider fallback - Per meeting: prioritize local machine first, then Hetzner - Meeting: Engineering flow / Ubuntu 4 May — Sections 4, 6, 49 (Timur Priority 1), 53
Author
Member

Closing — this issue describes a hardcoded CRM → slides pipeline inside hero_biz, which is the wrong approach. The agentic orchestration (intent → tool selection → OpenRPC dispatch → execution) belongs in the agent layer, not in the CRM service. hero_biz's role is simply to expose clean OpenRPC endpoints that an agent can query. The slides demo story should be driven from the agent side, not wired into hero_biz directly.

Closing — this issue describes a hardcoded CRM → slides pipeline inside hero_biz, which is the wrong approach. The agentic orchestration (intent → tool selection → OpenRPC dispatch → execution) belongs in the agent layer, not in the CRM service. hero_biz's role is simply to expose clean OpenRPC endpoints that an agent can query. The slides demo story should be driven from the agent side, not wired into hero_biz directly.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
lhumina_code/hero_biz#16
No description provided.