flowstate-epic-flowstate-community-epicdm-agent-ui
Package-local agent skill for @epicdm/agent-ui.
Tags
Publisher
Versions
1 version published — latest: 1.0.8
- 1.0.8publishedInvalid Date
Skill
agent-ui Package Skill
Package: @epicdm/agent-ui
Repository: epic-flowstate-community
Path: packages/agent-ui
Version: 1.0.8
Use this published Dojo skill as the package-level entrypoint. For detailed workflows, use the package-local skills listed below.
Primary Package Workflow
Agent UI Cross-App Navigation
Status: Active
Purpose: Generate FlowState Chat, Agents, and Org URLs for agent UI actions.
Scope: src/links/* helpers and useAgentNavigation.
Trigger: A component action should open agent chat, sessions, missions, proposals, worker, profile, or provision pages.
Input: Agent, conversation, or mission IDs plus app base URL environment variables.
Output: Safe URL strings or browser-open callbacks.
Environment Variables
getAppBaseUrl reads:
| App | Env var |
|---|---|
| Chat | NEXT_PUBLIC_CHAT_APP_URL |
| Agents | NEXT_PUBLIC_AGENTS_APP_URL |
| Org | NEXT_PUBLIC_ORG_APP_URL |
If an env var is missing, the helper returns an empty string so routes stay relative.
Route Helpers
Use route helpers from src/links/AgentLinks.ts:
| Helper | Route |
|---|---|
chatWithAgent(agentId) | /chat/agent/:agentId |
chatConversation(conversationId) | /chat/conversation/:conversationId |
chatSessions(agentId) | /chat/agent/:agentId/sessions |
agentMissions(agentId) | /agents/:agentId/missions |
agentProposals(agentId) | /agents/:agentId/proposals |
agentWorker(agentId) | /agents/:agentId/worker |
missionDetail(missionId) | /agents/missions/:missionId |
agentProfile(agentId) | /org/agents/:agentId |
agentProvision(agentId) | /org/agents/:agentId/provision |
Hook Workflow
- Ensure the consuming app sets the relevant
NEXT_PUBLIC_*_APP_URLvariables when cross-origin navigation is required. - Call
useAgentNavigation()inside React components. - Use
get*Urlhelpers when rendering an anchor or passing a URL to a router. - Use
open*helpers when the desired behavior is a new browser tab. - Keep callbacks at the app boundary so presentational components remain reusable.
Example
import { ActiveMissionsBadge, useAgentNavigation } from '@epicdm/agent-ui'
function AgentHeader({ agentId, activeMissionCount }: Props) {
const nav = useAgentNavigation()
return (
<ActiveMissionsBadge
count={activeMissionCount}
onClick={() => nav.openMissions(agentId)}
/>
)
}
Guardrails
- Do not hard-code app hostnames inside reusable components.
- Do not call
window.opendirectly whenuseAgentNavigationalready provides the action. - Do not assume all FlowState apps are mounted on the same origin.
- For server-rendered code, use pure route helpers instead of
useAgentNavigation.
Verification
yarn workspace @epicdm/agent-ui test __tests__/links __tests__/hooks/useAgentNavigation.test.ts
yarn workspace @epicdm/agent-ui typecheck
Composition
- Use with
flowstate-agent-ui-profile-statusfor card, modal, and mission badge actions. - Use with
flowstate-agent-ui-unified-sessionsfor session row and recent-session deep links.
Package Skill Inventory
Skill Inventory: @epicdm/agent-ui
Package path: packages/agent-ui
Skill Map
| Skill | Type | Purpose |
|---|---|---|
flowstate-agent-ui | Orchestrator | Decide how to use the package safely in FlowState app surfaces. |
flowstate-agent-ui-unified-sessions | Workflow | Normalize LLM, CLI, and OpenClaw session records and render session UI. |
flowstate-agent-ui-profile-status | Workflow | Build agent cards, status badges, and profile modals from mapped agent data. |
flowstate-agent-ui-cross-app-navigation | Workflow | Generate and open Chat, Agents, and Org app deep links without hard-coded host assumptions. |
flowstate-agent-ui-testing-maintenance | Pattern | Maintain tests, barrels, timers, docs drift, and generated artifact boundaries. |
Why This Split
The feature inventory lists 45 public features, but most compose into three recurring agent tasks:
- Agent identity and status display.
- Agent session aggregation and browsing.
- Cross-app navigation between Chat, Agents, and Org surfaces.
Creating one skill per component would hide the actual integration decisions an agent needs to make. The five-skill set keeps package usage teachable while still covering the public API groups and recurring maintenance risks.
Publication Notes
- Existing
.flowstate/dojopackage files are generated prototypes. - Dojo publication should use these reviewed skills as source, not the generated package summary.
Review Gate
Package Skill Review: @epicdm/agent-ui
Package path: packages/agent-ui
Review Result
Status: source-backed and verified for local package-skill use; Dojo publication deferred until reviewed skill content is packaged for the Dojo API.
The skillset is workflow-shaped around the three real package jobs: present agent identity/status, aggregate/render sessions, and navigate between FlowState apps.
Checks
- Source review: completed from package metadata, source exports, README, tests, feature matrix, and generated Dojo artifacts.
- Skill inventory: completed.
- Skill files: completed.
- Verification: completed with one local lint tooling blocker below.
- Generated Dojo replacement: deferred; existing
.flowstate/dojofiles are generated prototypes. - Cloud Dojo publication: deferred until reviewed skills are packaged into Dojo manifests.
Verification Commands
Verification completed before publication:
yarn workspace @epicdm/agent-ui test
yarn workspace @epicdm/agent-ui typecheck
yarn workspace @epicdm/agent-ui build
yarn workspace @epicdm/agent-ui lint
yarn nx build @epicdm/agent-ui
Results:
- ASCII validation passed for
.flowstate/skills. typecheckpassed.test --runInBandpassed: 24 suites, 289 tests.buildpassed.yarn nx build @epicdm/agent-uipassed with cached dependency builds for@epicdm/flowstate-cryptoand@epicdm/flowstate-collections; Nx reported the existing cloud workspace setup notice.lintcould not run because the package script resolved tocommand not found: eslint.
Publication Gate
Do not publish existing .flowstate/dojo artifacts until they are rebuilt from reviewed package skills.
Usage
Start with this skill to understand the package purpose, then use the package-local focused skills for specific workflows. Keep this Dojo version aligned with packages/agent-ui/package.json. Do not treat generated feature lists as lessons; use workflow evidence from CODE-REVIEW.md, SKILL-INVENTORY.md, and REVIEW.md.
Install
Run this in your project to install via CLI:
fscloud dojo skill install flowstate-epic-flowstate-community-epicdm-agent-ui --target <target> --out ./skillsReplace <target> with your agent target identifier. See the CLI docs for details.