FlowState Agents

Features & Capabilities

Agents App - Features & Capabilities Report

Template Version: 1.0.0 Generated: 2026-01-22 Package: @epicdm/flowstate-app-agents App ID: agents


Table of Contents

  1. Overview
  2. App Identity
  3. Feature Categories
  4. Capabilities
  5. Data Models
  6. User Workflows
  7. Integration Points
  8. Architecture Summary
  9. Quality & Compliance

Overview

Purpose

The Agents App provides autonomous agent and task approval management for AI-driven workflows. It enables users to orchestrate AI agents, manage automated task execution, review agent outputs through approval workflows, monitor worker status, and track execution logs across codebases.

Target Users

User TypeDescriptionPrimary Use Cases
AI EngineersConfigure and monitor agentsSet up workers, manage codebases, configure agent tasks
Project ManagersOversee agent workReview approvals, track task progress, monitor success rates
DevelopersCollaborate with agentsCreate tasks, respond to agent queries, review outputs
OperationsSystem monitoringView logs, track worker health, analyze success metrics

Value Proposition

  • Autonomous Task Execution: Agents execute spec-driven tasks automatically
  • Human-in-the-Loop Approvals: Review and approve agent outputs before finalization
  • Worker Management: Monitor agent health, activity, and performance metrics
  • Codebase Organization: Organize work by workspace and codebase
  • Execution Transparency: Comprehensive logging with filtering and search
  • Conversation Support: Threaded discussions for human-agent collaboration

App Identity

PropertyValue
IDagents
Display NameAgents App
Package Name@epicdm/flowstate-app-agents
Version1.0.0
Categorybusiness
Iconusers
ColorN/A
Base Path/agents
Permissionsdatabase, notifications

Entry Points

Entry PointPathDescription
Main Exportsrc/index.tsPrimary package export
Standalonesrc/standalone.tsxStandalone app entry
App Componentsrc/App.tsxMain React component with routing
Pluginsrc/plugin.tsFlowState plugin registration

Feature Categories

Category 1: Dashboard & Metrics

Central dashboard with real-time agent metrics

Feature: Dashboard Overview

PropertyDetails
IDdashboard-overview
StatusImplemented
PriorityHigh

Description: Main dashboard displaying key metrics including active workers, task queue size, pending approvals, and 24-hour success rate.

User Story: As an AI engineer, I want to see a dashboard so that I can quickly understand the state of my agent fleet.

Acceptance Criteria:

  • [x] Display active worker count
  • [x] Show task queue length
  • [x] Display pending approvals count
  • [x] Calculate and show 24-hour success rate
  • [x] Activity feed from recent logs
  • [x] Quick task creation action

Implementation:

ComponentPathPurpose
DashboardPagesrc/pages/DashboardPage.tsxMain dashboard page
DashboardStatssrc/components/DashboardStats.tsxStatistics display
ActivityFeedsrc/components/ActivityFeed.tsxRecent activity
NewTaskDialogsrc/components/NewTaskDialog.tsxTask creation

Routes:

  • /dashboard - Main dashboard (default route)

Category 2: Task Management

Agent task creation, execution tracking, and status management

Feature: Task List & Filtering

PropertyDetails
IDtask-list
StatusImplemented
PriorityHigh

Description: Comprehensive task list with status filtering, execution status filtering, multi-field sorting, and hierarchical task display with navigation controls.

User Story: As a developer, I want to view and filter agent tasks so that I can track work progress.

Acceptance Criteria:

  • [x] Status filtering (all, pending, in-progress, completed)
  • [x] Execution status filtering (all, success, failure, in-progress)
  • [x] Sorting by updatedAt, createdAt, title, status
  • [x] Hierarchical rendering with indentation
  • [x] Navigation controls (top, bottom, next task)
  • [x] Real-time updates via reactive queries
  • [x] Loading skeleton and empty states

Implementation:

ComponentPathPurpose
TasksPagesrc/pages/TasksPage.tsxTasks list page
AgentTaskListsrc/components/AgentTaskList.tsxFilterable task list
AgentTaskItemsrc/components/AgentTaskItem.tsxIndividual task display
TaskListsrc/components/TaskList.tsxBasic task list
useWorkflowTaskssrc/hooks/useWorkflowTasks.tsTask operations

Routes:

  • /tasks - Task list
  • /tasks/:taskId - Task detail

Feature: Task Detail View

PropertyDetails
IDtask-detail
StatusImplemented
PriorityHigh

Description: Detailed task view with tabbed navigation for overview, conversation history, approvals, and metadata. Includes agent assignment, execution timing, and conversation response capabilities.

User Story: As a developer, I want to view task details so that I can understand task status and respond to agent queries.

Acceptance Criteria:

  • [x] Task header with status and timing
  • [x] Tabbed navigation (Overview, Conversation, Approvals, Metadata)
  • [x] Execution output display
  • [x] Conversation history from discussions
  • [x] Response input for human-agent collaboration
  • [x] Task status updates

Implementation:

ComponentPathPurpose
TaskDetailPagesrc/pages/TaskDetailPage.tsxTask detail page
ConversationViewersrc/components/ConversationViewer.tsxConversation display
AgentSelectorsrc/components/AgentSelector.tsxAgent assignment
useTaskDiscussionssrc/hooks/useTaskDiscussions.tsTask conversations

Feature: Task Creation

PropertyDetails
IDtask-create
StatusImplemented
PriorityHigh

Description: Dialog-based task creation with title, description, and navigation to created task.

User Story: As a developer, I want to create tasks so that I can assign work to agents.

Acceptance Criteria:

  • [x] Modal dialog for task creation
  • [x] Form validation
  • [x] Navigation to created task
  • [x] Available from dashboard and tasks page

Implementation:

ComponentPathPurpose
NewTaskDialogsrc/components/NewTaskDialog.tsxTask creation dialog

Category 3: Approval Workflow

Human-in-the-loop approval for agent outputs

Feature: Approval List

PropertyDetails
IDapproval-list
StatusImplemented
PriorityHigh

Description: Table-based approval list with status badges, color coding, click-to-open dialog, and approval summary statistics.

User Story: As a project manager, I want to view pending approvals so that I can review and approve agent work.

Acceptance Criteria:

  • [x] Status badges with color coding (pending, approved, rejected, needs-revision)
  • [x] Responsive table layout
  • [x] Click-to-open dialog for pending approvals
  • [x] Approval counts summary
  • [x] Loading and empty states

Implementation:

ComponentPathPurpose
ApprovalsPagesrc/pages/ApprovalsPage.tsxApprovals page
ApprovalListsrc/components/ApprovalList.tsxApproval table
ApprovalDialogsrc/components/ApprovalDialog.tsxApproval review dialog
useWorkflowApprovalssrc/hooks/useWorkflowApprovals.tsApproval operations

Routes:

  • /approvals - Approvals list

Feature: Approval Actions

PropertyDetails
IDapproval-actions
StatusImplemented
PriorityHigh

Description: Modal dialog for reviewing and taking action on approvals (approve, reject, request revision) with optional comments.

User Story: As a reviewer, I want to approve or reject agent outputs so that I can ensure quality.

Acceptance Criteria:

  • [x] Approve with optional comments
  • [x] Reject with optional comments
  • [x] Request revision with feedback
  • [x] Status change notifications

Implementation:

ComponentPathPurpose
ApprovalDialogsrc/components/ApprovalDialog.tsxApproval action modal

Category 4: Worker Management

Monitor and manage autonomous workers/agents

Feature: Worker Overview

PropertyDetails
IDworker-overview
StatusImplemented
PriorityHigh

Description: Overview dashboard showing total workers, active workers, active tasks, and completed tasks with aggregated statistics.

User Story: As an operations engineer, I want to see worker status so that I can monitor agent health.

Acceptance Criteria:

  • [x] Total workers count
  • [x] Active workers count (activity < 5 min)
  • [x] Active tasks count
  • [x] Completed tasks count
  • [x] Statistics grid layout

Implementation:

ComponentPathPurpose
WorkersPagesrc/pages/WorkersPage.tsxWorkers page
WorkerManagementsrc/components/WorkerManagement.tsxWorker management UI

Routes:

  • /workers - Worker management

Feature: Worker Cards

PropertyDetails
IDworker-cards
StatusImplemented
PriorityMedium

Description: Individual worker cards showing status (Active/Idle/Inactive), active tasks, completed tasks, failed tasks, success rate, last activity, and log viewing.

User Story: As an AI engineer, I want to see individual worker stats so that I can identify performance issues.

Acceptance Criteria:

  • [x] Status determination based on last activity
  • [x] Task statistics per worker
  • [x] Success rate calculation
  • [x] Last activity timestamp
  • [x] View logs action
  • [x] Sorted by active status and last activity

Implementation:

ComponentPathPurpose
WorkerCardsrc/components/WorkerManagement.tsxWorker card (internal)

Category 5: Codebase Management

Organize codebases within workspaces

Feature: Codebase List

PropertyDetails
IDcodebase-list
StatusImplemented
PriorityMedium

Description: Workspace-scoped codebase listing with status badges, descriptions, and navigation to codebase details.

User Story: As a developer, I want to view codebases so that I can organize agent work by repository.

Acceptance Criteria:

  • [x] Filter by current workspace
  • [x] Status badges (active/inactive)
  • [x] Codebase description display
  • [x] Navigation to detail view
  • [x] Create new codebase action

Implementation:

ComponentPathPurpose
CodebasesPagesrc/pages/CodebasesPage.tsxCodebases page
useWorkflowCodebasessrc/hooks/useWorkflowCodebases.tsCodebase operations

Routes:

  • /codebases - Codebase list
  • /codebases/new - Create codebase
  • /codebases/:id - Codebase detail

Feature: Codebase Detail

PropertyDetails
IDcodebase-detail
StatusImplemented
PriorityMedium

Description: Detailed codebase view with metadata, editing capabilities, and associated information.

User Story: As a developer, I want to view codebase details so that I can manage repository configuration.

Acceptance Criteria:

  • [x] Display codebase metadata
  • [x] Edit codebase details
  • [x] Status display
  • [x] Created/updated timestamps

Implementation:

ComponentPathPurpose
CodebaseDetailPagesrc/pages/CodebaseDetailPage.tsxCodebase detail
CodebaseNewPagesrc/pages/CodebaseNewPage.tsxCreate codebase

Category 6: Logging & Monitoring

Comprehensive execution logging with filtering

Feature: Log Viewer

PropertyDetails
IDlog-viewer
StatusImplemented
PriorityHigh

Description: Log viewer with level filtering, category filtering, search, expandable details, and color-coded severity levels.

User Story: As an operations engineer, I want to view execution logs so that I can debug issues.

Acceptance Criteria:

  • [x] Filter by level (debug, info, warn, error, critical)
  • [x] Filter by category
  • [x] Search by message content
  • [x] Expandable log details
  • [x] Metadata display (command, exit code, duration, error)
  • [x] Color-coded severity levels
  • [x] Relative timestamps

Implementation:

ComponentPathPurpose
LogsPagesrc/pages/LogsPage.tsxLogs page
LogViewersrc/components/LogViewer.tsxLog viewer component
useWorkflowLogssrc/hooks/useWorkflowLogs.tsLog queries

Routes:

  • /logs - Logs viewer

Category 7: Spec Workflow Support

Spec-driven development workflow

Feature: Spec Management

PropertyDetails
IDspec-management
StatusImplemented
PriorityMedium

Description: Support for spec-driven workflow with phases (requirements, design, tasks, implementation), milestone timeline, and phase documents.

User Story: As a developer, I want to manage specs so that I can follow structured development workflows.

Acceptance Criteria:

  • [x] Spec list view
  • [x] Spec detail view
  • [x] Phase document management
  • [x] Milestone timeline display
  • [x] Markdown editor for documents

Implementation:

ComponentPathPurpose
SpecListViewsrc/components/SpecListView.tsxSpec listing
SpecDetailViewsrc/components/SpecDetailView.tsxSpec detail
SpecCardsrc/components/SpecCard.tsxSpec card display
PhaseDocumentssrc/components/PhaseDocuments.tsxPhase documents
MilestoneTimelinesrc/components/MilestoneTimeline.tsxTimeline
MarkdownEditorsrc/components/MarkdownEditor.tsxDocument editing
MarkdownRenderersrc/components/MarkdownRenderer.tsxDocument rendering
useWorkflowSpecssrc/hooks/useWorkflowSpecs.tsSpec operations
useWorkflowMilestonessrc/hooks/useWorkflowMilestones.tsMilestone operations

Capabilities

Core Capabilities

CapabilityDescriptionImplementation
Task OrchestrationManage agent task queuesuseWorkflowTasks hook with RxDB
Approval WorkflowHuman-in-the-loop reviewApprovalList with status transitions
Worker MonitoringTrack agent health and performanceWorkerManagement with calculated stats
Execution LoggingTrack all agent activitiesLogViewer with filtering and search
Human-Agent CollaborationConversation threadingTaskDiscussions with discussion collection

Technical Capabilities

CapabilityStatusNotes
CRUD OperationsYesFull CRUD on tasks, approvals, codebases
Real-time UpdatesYesRxDB reactive subscriptions
Offline SupportYesRxDB local-first architecture
Search & FilterYesMulti-field filtering on logs and tasks
SortingYesConfigurable sort on task lists
PaginationNoScroll-based loading
ExportNoNot currently implemented
NotificationsYesToast notifications for actions

Integration Capabilities

IntegrationTypeDescription
FlowState FrameworkinternalAuth, org context, layout
RxDB CollectionsinternalData persistence and sync
Discussion CollectioninternalHuman-agent conversations

Data Models

Collections Used

CollectionDescriptionOperationsPrimary Hook
tasksAgent task recordsCRUD, QueryuseWorkflowTasks
approvalsApproval recordsCRUD, QueryuseWorkflowApprovals
logsExecution logsQueryuseWorkflowLogs
codebasesCodebase recordsCRUD, QueryuseWorkflowCodebases
workspacesWorkspace recordsQueryuseWorkflowWorkspaces
discussionsConversation turnsCRUD, QueryuseTaskDiscussions
sessionsAgent sessionsQueryDB collections
conversationsAgent conversationsQueryDB collections
messagesConversation messagesQueryDB collections
flowsAgent workflowsQueryDB collections

Entity Relationships

Workspace
    |
    +-- Codebases (hasMany)
            |
            +-- Specs (hasMany, via categoryId)
                    |
                    +-- Milestones (hasMany)
                    |       |
                    |       +-- Tasks (hasMany)
                    |               |
                    |               +-- Discussions (hasMany)
                    |               |
                    |               +-- Logs (hasMany)
                    |
                    +-- Approvals (hasMany)

Task
    |
    +-- Subtasks (hasMany, via parentTaskId)
    |
    +-- TimeEntries (hasMany)
    |
    +-- Worker (belongsTo, via metadata.assignedAgent)

Key Data Flows

User Action --> Component --> Hook --> RxDB Collection --> UI Update
                                  |
                                  +--> Service (complex logic)
                                  |
                                  +--> Replication --> Server

Agent Execution:
Task Created --> Orchestrator Picks Up --> Agent Executes -->
    --> Logs Created --> Status Updated --> Approval Created (if needed)

User Workflows

Workflow 1: Task Execution Monitoring

Monitor agent task execution

Trigger: Navigate to Tasks page

Steps:

StepActionComponentOutcome
1Open tasks pageTasksPageTask list displayed
2Filter by statusAgentTaskListFiltered view
3Click taskAgentTaskItemNavigate to detail
4View conversationTaskDetailPageConversation shown
5Respond if neededResponse inputTask reset to queue

Success Outcome: Task status tracked, human input provided Failure Handling: Logs available for debugging


Workflow 2: Approval Review

Review and approve agent outputs

Trigger: Pending approval notification

Steps:

StepActionComponentOutcome
1Open approvalsApprovalsPageApproval list shown
2Click pending approvalApprovalListDialog opens
3Review contentApprovalDialogContent displayed
4Take actionApprovalDialogApprove/reject/revise
5Add commentsApprovalDialogComments saved

Success Outcome: Approval processed, workflow continues Failure Handling: Revision requested with feedback


Workflow 3: Worker Health Check

Monitor worker status and health

Trigger: Navigate to Workers page

Steps:

StepActionComponentOutcome
1Open workersWorkersPageOverview displayed
2Review metricsWorkerManagementStats shown
3Check worker cardWorkerCardIndividual stats
4View logsLogViewerWorker logs filtered
5Identify issuesLog analysisIssues found

Success Outcome: Worker health verified Failure Handling: Inactive workers identified


State Transitions

Task Status States

+----------+     +--------------+     +----------+
|  To Do   |---->| In Progress  |---->| Complete |
+----------+     +--------------+     +----------+
     |                  |
     v                  v
+----------+     +--------------+
| On Hold  |<--->|   Blocked    |
+----------+     +--------------+
From StateTo StateTriggerSide Effects
To DoIn ProgressAgent picks upExecution starts
In ProgressCompleteAgent finishesApproval may be created
In ProgressBlockedError occursLog created
CompleteTo DoHuman responseRe-queued for agent

Approval Status States

+----------+     +----------+
| Pending  |---->| Approved |
+----------+     +----------+
     |
     +---------->+----------+
     |           | Rejected |
     |           +----------+
     |
     +---------->+----------------+
                 | Needs Revision |
                 +----------------+

Integration Points

Internal Integrations

IntegrationPackagePurpose
FlowState Framework@epicdm/flowstate-app-frameworkApp container, auth, layout
Collections@epicdm/flowstate-collectionsData models and schemas
RxDB@epicdm/flowstate-rxdbDatabase operations
RxDB React@epicdm/flowstate-rxdb-reactReactive subscriptions
UI Components@epicdm/flowstate-uiShared UI components

External Integrations

IntegrationTypeConfiguration
FormikLibraryForm management
YupLibraryForm validation
react-toastifyLibraryToast notifications
Lucide ReactLibraryIcons

MCP Integration

ToolPurposeExample Usage
collection-queryQuery tasks, approvals{"collection": "tasks", "selector": {"status": "In Progress"}}
collection-createCreate tasks{"collection": "tasks", "data": {...}}
collection-updateUpdate task status{"collection": "tasks", "id": "...", "data": {"status": "Complete"}}

Architecture Summary

Directory Structure

src/
+-- components/          # UI components (25+ files)
|   +-- codebases/      # Codebase components
|   +-- variables/      # Variable components
|   +-- ActivityFeed.tsx
|   +-- AgentSelector.tsx
|   +-- AgentTaskItem.tsx
|   +-- AgentTaskList.tsx
|   +-- ApprovalDialog.tsx
|   +-- ApprovalList.tsx
|   +-- DashboardStats.tsx
|   +-- ErrorBoundary.tsx
|   +-- Header.tsx
|   +-- LogViewer.tsx
|   +-- MarkdownEditor.tsx
|   +-- MarkdownRenderer.tsx
|   +-- MilestoneTimeline.tsx
|   +-- NewTaskDialog.tsx
|   +-- PhaseDocuments.tsx
|   +-- Sidebar.tsx
|   +-- SpecCard.tsx
|   +-- SpecDetailView.tsx
|   +-- SpecListView.tsx
|   +-- TaskList.tsx
|   +-- WorkerManagement.tsx
+-- hooks/              # Custom React hooks (10 hooks)
|   +-- useTaskDiscussions.ts
|   +-- useWorkflowApprovals.ts
|   +-- useWorkflowCodebases.ts
|   +-- useWorkflowLogs.ts
|   +-- useWorkflowMilestones.ts
|   +-- useWorkflowSpecs.ts
|   +-- useWorkflowTasks.ts
|   +-- useWorkflowVariables.ts
|   +-- useWorkflowWorkspaces.ts
+-- pages/              # Page components (11 pages)
+-- types/              # TypeScript definitions
+-- db/                 # Database configuration
+-- lib/                # Utility libraries

Key Architectural Patterns

PatternUsageExample
State ManagementRxDB + JotaiCollections for data, Jotai for UI state
Data FlowReactive subscriptionsRxDB observables through hooks
Component ArchitectureFeature-basedComponents grouped by domain
RoutingReact Router v6Flat routes for simplicity
Error HandlingError boundariesErrorBoundary wrapper component

Hooks Overview

HookPurposeReturns
useWorkflowTasksTask operations{ tasks, startTask, stopTask, updateTask, filterByStatus }
useWorkflowApprovalsApproval operations{ approvals, createApproval, updateApprovalStatus }
useWorkflowLogsLog queries{ logs, getLogsByEntity, getLogsByTask, getLogsByAgent }
useWorkflowCodebasesCodebase operations{ codebases, createCodebase, updateCodebase }
useWorkflowWorkspacesWorkspace queries{ workspaces, getWorkspaceById }
useTaskDiscussionsTask conversations{ conversations, isLoading }
useWorkflowSpecsSpec operations{ specs, createSpec, updateSpec, filterSpecs }
useWorkflowMilestonesMilestone operations{ milestones, getPhaseDocument, updatePhaseDocument }
useWorkflowVariablesVariable operations{ variables, createVariable, updateVariable }

Quality & Compliance

Test Coverage

Test TypeLocationCoverage Target
Unit Testssrc/**/__tests__/>= 80%
Hook Testssrc/hooks/__tests__/>= 80%
E2E Testsplaywright/Critical paths

Accessibility

RequirementStatusNotes
WCAG 2.1 AAIn ProgressComponents use semantic HTML
Keyboard NavigationYesTab navigation supported
Screen Reader SupportPartialAria labels on interactive elements
Focus ManagementYesModal focus trapping

Security Considerations

ConsiderationImplementation
Input ValidationYup schemas for form validation
AuthorizationOrg/workspace isolation via IDs
Data ProtectionRxDB local-first with replication

FlowState Alignment

Spec-Driven Development

This app follows the FlowState Standard for spec-driven development:

  • Requirements: .flowstate/specs/{{feature-name}}/requirements.md
  • Design: .flowstate/specs/{{feature-name}}/design.md
  • Wireframes: .flowstate/specs/{{feature-name}}/wireframes.html
  • Tasks: .flowstate/specs/{{feature-name}}/tasks.md

Quality Gates

GateRequirementStatus
Test Coverage>= 80% statementsIn Progress
TypeScript StrictNo any without justificationPass
AccessibilityWCAG 2.1 AAIn Progress
Documentation100% TSDoc on public APIsIn Progress
SecurityNo critical vulnerabilitiesPass

Appendix

DocumentLocationPurpose
FLOWSTATE.md.flowstate/docs/FLOWSTATE.mdDevelopment workflow
PROCESS.md.flowstate/docs/PROCESS.mdDevelopment process
TDD.md.flowstate/steering/TDD.mdTesting standards
QUALITY.md.flowstate/steering/QUALITY.mdCode quality

Version History

VersionDateAuthorChanges
1.0.02026-01-22ClaudeInitial documentation
Previous
Getting Started