Building AI Workflows with Persistent Memory
Learn how to use ContextFS to orchestrate multi-step AI agent operations with persistent state, enabling complex workflows that span multiple sessions.
Building AI Workflows with Persistent Memory
AI agents are great at individual tasks, but complex projects require multi-step workflows that span multiple sessions. Without persistent memory, each step starts from scratch.
ContextFS provides workflow and task primitives that enable sophisticated AI orchestration. Let's build a real-world example.
The Problem
Imagine you're using AI to help with a code migration project:
- Day 1: Analyze the codebase, identify patterns
- Day 2: Plan the migration strategy
- Day 3: Execute migrations, track progress
- Day 4: Review and fix issues
Without persistent memory, you'd need to re-explain everything each day. With ContextFS, the AI remembers the entire journey.
Workflow Primitives
ContextFS provides three key primitives:
1. Workflows
A workflow is a named container for related tasks:
# Create a workflow
contextfs workflow create "react-migration" \
--description "Migrate from class components to hooks"
2. Tasks
Tasks are individual steps within a workflow:
# Add tasks to the workflow
contextfs task add "react-migration" "Analyze existing components" --status pending
contextfs task add "react-migration" "Identify migration patterns" --status pending
contextfs task add "react-migration" "Migrate auth components" --status pending
contextfs task add "react-migration" "Migrate dashboard components" --status pending
contextfs task add "react-migration" "Update tests" --status pending
3. Steps
Steps are granular actions within a task:
# Add steps to a task
contextfs step add "task-123" "Review UserAuth.jsx"
contextfs step add "task-123" "Convert to functional component"
contextfs step add "task-123" "Add useState for local state"
contextfs step add "task-123" "Add useEffect for lifecycle"
Real-World Example
Let's walk through a complete workflow:
Day 1: Analysis
# Start the workflow
contextfs workflow create "api-refactor" \
--description "Refactor REST API to use repository pattern"
# Save analysis findings as memories
contextfs save "API has 12 controllers with direct database calls" \
-t fact --tags api-refactor,analysis
contextfs save "Controllers average 300 lines, high complexity" \
-t fact --tags api-refactor,analysis
contextfs save "No existing abstraction layer between controllers and DB" \
-t fact --tags api-refactor,analysis
# Create the migration plan
contextfs task add "api-refactor" "Create base repository interface" --status pending
contextfs task add "api-refactor" "Implement UserRepository" --status pending
contextfs task add "api-refactor" "Implement ProductRepository" --status pending
contextfs task add "api-refactor" "Refactor UserController" --status pending
contextfs task add "api-refactor" "Refactor ProductController" --status pending
contextfs task add "api-refactor" "Add integration tests" --status pending
Day 2: Decisions
# Record architectural decisions
contextfs save "Use abstract base class for repositories to share common CRUD operations" \
-t decision --tags api-refactor
contextfs save "Inject repositories via constructor for testability" \
-t decision --tags api-refactor
contextfs save "Keep existing API contracts, only change internal implementation" \
-t decision --tags api-refactor
# Start first task
contextfs task update "task-001" --status in_progress
Day 3: Implementation
# Mark task complete
contextfs task update "task-001" --status completed
# Record what was done
contextfs save "Created IRepository<T> interface with CRUD methods" \
-t code --tags api-refactor
# Move to next task
contextfs task update "task-002" --status in_progress
# Track progress
contextfs workflow status "api-refactor"
# Output:
# api-refactor: Refactor REST API to use repository pattern
# Progress: 1/6 tasks completed (16%)
# Current: Implement UserRepository (in_progress)
Day 4: Continue
When you start a new session, the AI can recall all context:
# Search for project context
contextfs search "api-refactor"
# Get workflow status
contextfs workflow status "api-refactor"
# The AI now knows:
# - What you're building
# - What decisions were made
# - Current progress
# - What's next
MCP Integration
With MCP (Model Context Protocol), AI assistants can interact with workflows directly:
User: "Continue working on the API refactor"
AI: Let me check the current status...
[Calls contextfs_search for "api-refactor"]
[Calls contextfs_workflow_status]
I see we're working on the API refactor project. Here's the current state:
- Completed: Base repository interface
- In Progress: UserRepository implementation
- Remaining: 4 tasks
Based on your decision to use constructor injection, here's how
I'd implement the UserRepository...
Best Practices
1. Name workflows descriptively
Bad: project-1
Good: react-18-migration-dashboard
2. Save decisions as you make them
Don't wait—record decisions immediately so they're available in future sessions.
3. Use tags consistently
Create a tagging convention and stick to it:
project-namefor project associationanalysis,decision,implementationfor phasesblocked,needs-reviewfor status
4. Review workflow status regularly
Start each session by checking workflow status to orient the AI.
What's Next
We're building more workflow features:
- Workflow templates for common patterns
- Automatic progress tracking from code changes
- Team workflows for collaborative projects
- Workflow visualization in the dashboard
Ready to build sophisticated AI workflows? Install ContextFS and start orchestrating.