Knowledge Systems
Outpost is a personal knowledge system. It schedules AI tasks that run in the background against your personal knowledge base — syncing email, preparing meeting briefings, organizing notes, and keeping you ready for the day ahead.
Scheduler
The scheduler runs tasks on a configurable schedule. It supports three modes:
| Mode | Command | Description |
|---|---|---|
| Run once | npx fit-outpost |
Execute all due tasks and exit |
| Daemon | npx fit-outpost daemon |
Run continuously on schedule |
| Single task | npx fit-outpost wake daily_briefing |
Run one specific task |
The scheduler tracks task state in a state.json file,
recording when each task last ran and whether it succeeded. On each
cycle, it checks which tasks are due based on their schedule and
runs them in order.
Logs are written to a log directory inside your knowledge base, one file per task per run. Check recent activity:
npx fit-outpost status
Task Configuration
Tasks are defined in a scheduler.json file inside your
knowledge base. Each task specifies what to do and when:
{
"tasks": [
{
"id": "daily_briefing",
"name": "Daily Briefing",
"schedule": "0 7 * * *",
"agent": "briefing",
"enabled": true
},
{
"id": "mail_sync",
"name": "Email Sync",
"schedule": "*/30 * * * *",
"agent": "mail",
"enabled": true
}
]
}
Task properties:
| Property | Description |
|---|---|
id |
Unique task identifier |
name |
Human-readable name |
schedule |
Cron expression for when the task runs |
agent |
Which agent skill to use for execution |
enabled |
Whether the task is active |
Default tasks include:
| Task | Schedule | Purpose |
|---|---|---|
| Mail sync | Every 30 minutes | Sync and organize email |
| Calendar prep | Hourly | Prepare meeting briefings |
| Daily briefing | 7:00 AM | Compile daily overview |
| Weekly review | Monday 8:00 AM | Summarize the past week |
| File organizer | Daily | Organize knowledge base files |
Environment variables for mail and calendar integrations are configured in your knowledge base's environment file.
Knowledge Base Structure
An Outpost knowledge base is a directory with a specific structure:
~/Documents/Personal/
├── .claude/
│ └── skills/ # Agent skill definitions
├── CLAUDE.md # Agent instructions for this KB
├── USER.md # Your profile and preferences
├── scheduler.json # Task configuration
├── state.json # Scheduler state (auto-managed)
├── mail/ # Synced email
├── calendar/ # Calendar data and briefings
├── notes/ # Your notes and documents
├── files/ # Organized files
└── logs/ # Task execution logs
KB Skills
The .claude/skills/ directory contains skill
definitions that agents use when executing tasks. Each skill is a
directory with instructions for a specific capability — how to
process email, how to prepare a briefing, how to organize files.
Skills are generated from your agent-aligned engineering standard (see Agent Teams) but can also be customized for personal workflows.
Initialization
Set up a new knowledge base:
npx fit-outpost init ~/Documents/Personal/
This creates the directory structure, copies default skill
definitions, and generates a starter scheduler.json.
You can then customize the configuration and add your own notes and
files.
Key Commands
| Command | Description |
|---|---|
npx fit-outpost init <path> |
Initialize a new knowledge base |
npx fit-outpost |
Run all due tasks once |
npx fit-outpost daemon |
Run continuously |
npx fit-outpost wake <id> |
Run a single task |
npx fit-outpost status |
Show scheduler status |
npx fit-outpost stop |
Stop the daemon and all running agents |
npx fit-outpost update |
Update KB with latest agents and skills |
npx fit-outpost validate |
Validate agent definitions |
Paths and Directories
| Path | Purpose |
|---|---|
~/Documents/Personal/ |
Default knowledge base location |
.claude/skills/ |
Agent skill definitions |
scheduler.json |
Task schedule configuration |
state.json |
Task execution state |
logs/ |
Execution logs |
Related Documentation
- Agent Teams — how agent skills are generated from your agent-aligned engineering standard