agent-office 0.6.23 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +0 -0
- package/CONTEXT.md +77 -0
- package/README.md +87 -6
- package/dist/commands/cron-requests.d.ts +5 -5
- package/dist/commands/cron-requests.d.ts.map +1 -1
- package/dist/commands/cron-requests.js +9 -14
- package/dist/commands/cron-requests.js.map +1 -1
- package/dist/commands/crons.d.ts +9 -9
- package/dist/commands/crons.d.ts.map +1 -1
- package/dist/commands/crons.js +17 -27
- package/dist/commands/crons.js.map +1 -1
- package/dist/commands/messages.d.ts +6 -6
- package/dist/commands/messages.d.ts.map +1 -1
- package/dist/commands/messages.js +11 -18
- package/dist/commands/messages.js.map +1 -1
- package/dist/commands/sessions.d.ts +5 -5
- package/dist/commands/sessions.d.ts.map +1 -1
- package/dist/commands/sessions.js +10 -16
- package/dist/commands/sessions.js.map +1 -1
- package/dist/commands/task-columns.d.ts +1 -1
- package/dist/commands/task-columns.d.ts.map +1 -1
- package/dist/commands/task-columns.js +2 -4
- package/dist/commands/task-columns.js.map +1 -1
- package/dist/commands/tasks.d.ts +10 -10
- package/dist/commands/tasks.d.ts.map +1 -1
- package/dist/commands/tasks.js +20 -31
- package/dist/commands/tasks.js.map +1 -1
- package/dist/contracts/commands.d.ts +38 -0
- package/dist/contracts/commands.d.ts.map +1 -0
- package/dist/contracts/commands.js +469 -0
- package/dist/contracts/commands.js.map +1 -0
- package/dist/index.js +1062 -160
- package/dist/index.js.map +1 -1
- package/dist/lib/input.d.ts +7 -0
- package/dist/lib/input.d.ts.map +1 -0
- package/dist/lib/input.js +94 -0
- package/dist/lib/input.js.map +1 -0
- package/dist/lib/mcp.d.ts +36 -0
- package/dist/lib/mcp.d.ts.map +1 -0
- package/dist/lib/mcp.js +150 -0
- package/dist/lib/mcp.js.map +1 -0
- package/dist/lib/output.d.ts +9 -1
- package/dist/lib/output.d.ts.map +1 -1
- package/dist/lib/output.js +59 -4
- package/dist/lib/output.js.map +1 -1
- package/dist/lib/schema.d.ts +35 -0
- package/dist/lib/schema.d.ts.map +1 -0
- package/dist/lib/schema.js +441 -0
- package/dist/lib/schema.js.map +1 -0
- package/dist/lib/validation.d.ts +15 -0
- package/dist/lib/validation.d.ts.map +1 -0
- package/dist/lib/validation.js +140 -0
- package/dist/lib/validation.js.map +1 -0
- package/package.json +5 -2
- package/skills/SKILL-create-coworker.md +51 -0
- package/skills/SKILL-cron-jobs.md +106 -0
- package/skills/SKILL-send-message.md +56 -0
- package/skills/SKILL-task-management.md +86 -0
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: agent-office-create-coworker
|
|
3
|
+
version: 1.0.0
|
|
4
|
+
metadata:
|
|
5
|
+
description: Create and manage AI coworkers in the office system
|
|
6
|
+
mutating: true
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Create Coworker Skill
|
|
10
|
+
|
|
11
|
+
This skill guides agents on creating coworkers (AI agent sessions) in the agent-office system.
|
|
12
|
+
|
|
13
|
+
## Invariants
|
|
14
|
+
|
|
15
|
+
- **Always use --dry-run first** when creating coworkers to validate parameters
|
|
16
|
+
- Coworker names should be unique and descriptive (e.g., "Alice", "Bob", "DevAssistant")
|
|
17
|
+
- coworkerType should reflect the role: `assistant`, `developer`, `manager`, `reviewer`, etc.
|
|
18
|
+
- Confirm with user before creating production coworkers
|
|
19
|
+
|
|
20
|
+
## Best Practices
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
# Validate first
|
|
24
|
+
agent-office --sqlite ./data.db create-coworker \
|
|
25
|
+
--name "NewCoworker" \
|
|
26
|
+
--coworker-type "assistant" \
|
|
27
|
+
--dry-run
|
|
28
|
+
|
|
29
|
+
# Then execute
|
|
30
|
+
agent-office --sqlite ./data.db create-coworker \
|
|
31
|
+
--name "NewCoworker" \
|
|
32
|
+
--coworker-type "assistant"
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## JSON Input Format (Agent-First)
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
agent-office --sqlite ./data.db create-coworker \
|
|
39
|
+
--json '{"name": "NewCoworker", "coworkerType": "assistant"}'
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## Required Fields
|
|
43
|
+
|
|
44
|
+
- `name`: Unique identifier for the coworker
|
|
45
|
+
- `coworkerType`: Role classification
|
|
46
|
+
|
|
47
|
+
## Related Commands
|
|
48
|
+
|
|
49
|
+
- `update-coworker` - Modify existing coworker properties
|
|
50
|
+
- `delete-coworker` - Remove coworker and all associated data
|
|
51
|
+
- `list-coworkers` - View all coworkers
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: agent-office-cron-jobs
|
|
3
|
+
version: 1.0.0
|
|
4
|
+
metadata:
|
|
5
|
+
description: Schedule and manage automated tasks
|
|
6
|
+
mutating: true
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Cron Job Management Skill
|
|
10
|
+
|
|
11
|
+
This skill guides agents on creating and managing scheduled cron jobs.
|
|
12
|
+
|
|
13
|
+
## Invariants
|
|
14
|
+
|
|
15
|
+
- **Always use request-cron workflow for production** (requires approval)
|
|
16
|
+
- **Always use --dry-run** when creating cron jobs
|
|
17
|
+
- Validate cron schedule expression format before creating
|
|
18
|
+
- Include clear timezone specification
|
|
19
|
+
- Document who to notify on completion
|
|
20
|
+
|
|
21
|
+
## Two Workflows
|
|
22
|
+
|
|
23
|
+
### 1. Request-Approval Workflow (Production)
|
|
24
|
+
|
|
25
|
+
For production cron jobs, use the approval workflow:
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
# Request (creates pending request)
|
|
29
|
+
agent-office --sqlite ./data.db request-cron \
|
|
30
|
+
--name "Daily Report" \
|
|
31
|
+
--coworker "Alice" \
|
|
32
|
+
--schedule "0 9 * * *" \
|
|
33
|
+
--task "Generate daily summary report" \
|
|
34
|
+
--notify "Bob, Charlie" \
|
|
35
|
+
--timezone "America/New_York"
|
|
36
|
+
|
|
37
|
+
# List pending requests
|
|
38
|
+
agent-office --sqlite ./data.db list-cron-requests
|
|
39
|
+
|
|
40
|
+
# Approve (requires reviewer)
|
|
41
|
+
agent-office --sqlite ./data.db approve-cron-request \
|
|
42
|
+
--id 1 \
|
|
43
|
+
--reviewer "Manager" \
|
|
44
|
+
--notes "Approved for daily execution"
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
### 2. Direct Creation (Development/Testing)
|
|
48
|
+
|
|
49
|
+
For development only:
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
agent-office --sqlite ./data.db create-cron \
|
|
53
|
+
--name "Test Job" \
|
|
54
|
+
--coworker "TestBot" \
|
|
55
|
+
--schedule "*/5 * * * *" \
|
|
56
|
+
--task "Run test suite" \
|
|
57
|
+
--notify "Developer" \
|
|
58
|
+
--timezone "UTC" \
|
|
59
|
+
--dry-run # Validate first
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
## JSON Input Format
|
|
63
|
+
|
|
64
|
+
```bash
|
|
65
|
+
agent-office --sqlite ./data.db create-cron \
|
|
66
|
+
--json '{
|
|
67
|
+
"name": "Daily Report",
|
|
68
|
+
"coworker": "Alice",
|
|
69
|
+
"schedule": "0 9 * * *",
|
|
70
|
+
"task": "Generate daily summary",
|
|
71
|
+
"notify": "Bob, Charlie",
|
|
72
|
+
"timezone": "America/New_York"
|
|
73
|
+
}'
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
## Cron Schedule Format
|
|
77
|
+
|
|
78
|
+
Standard cron expression: `min hour day month weekday`
|
|
79
|
+
|
|
80
|
+
Examples:
|
|
81
|
+
|
|
82
|
+
- `0 9 * * 1` - Every Monday at 9 AM
|
|
83
|
+
- `0 */6 * * *` - Every 6 hours
|
|
84
|
+
- `0 9 * * *` - Daily at 9 AM
|
|
85
|
+
- `*/5 * * * *` - Every 5 minutes (testing)
|
|
86
|
+
|
|
87
|
+
## Safety Guidelines
|
|
88
|
+
|
|
89
|
+
1. **Start with --dry-run** to validate
|
|
90
|
+
2. **Use request-cron for production** (enables approval workflow)
|
|
91
|
+
3. **Test schedules** with frequent intervals first
|
|
92
|
+
4. **Document dependencies** in the task description
|
|
93
|
+
5. **Always specify timezone** explicitly
|
|
94
|
+
|
|
95
|
+
## Monitoring
|
|
96
|
+
|
|
97
|
+
```bash
|
|
98
|
+
# Check if cron should run this minute
|
|
99
|
+
agent-office --sqlite ./data.db check-cron-jobs --coworker "Alice"
|
|
100
|
+
|
|
101
|
+
# Get actionable cron jobs for AI execution
|
|
102
|
+
agent-office --sqlite ./data.db list-active-cron-actions --coworker "Alice"
|
|
103
|
+
|
|
104
|
+
# View execution history
|
|
105
|
+
agent-office --sqlite ./data.db cron-history --id 1 --limit 10
|
|
106
|
+
```
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: agent-office-send-message
|
|
3
|
+
version: 1.0.0
|
|
4
|
+
metadata:
|
|
5
|
+
description: Send messages between coworkers
|
|
6
|
+
mutating: true
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Send Message Skill
|
|
10
|
+
|
|
11
|
+
This skill guides agents on sending messages between AI coworkers.
|
|
12
|
+
|
|
13
|
+
## Invariants
|
|
14
|
+
|
|
15
|
+
- **Always use --dry-run first** for important messages
|
|
16
|
+
- Verify recipient names exist via `list-coworkers` before sending
|
|
17
|
+
- Message body should be clear and actionable
|
|
18
|
+
- Use `--json` for complex messages with formatting
|
|
19
|
+
|
|
20
|
+
## Best Practices
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
# List coworkers first to verify recipients
|
|
24
|
+
agent-office --sqlite ./data.db list-coworkers --fields name
|
|
25
|
+
|
|
26
|
+
# Send with validation
|
|
27
|
+
agent-office --sqlite ./data.db send-message \
|
|
28
|
+
--from "Alice" \
|
|
29
|
+
--to "Bob" "Charlie" \
|
|
30
|
+
--body "Task complete. Please review." \
|
|
31
|
+
--dry-run
|
|
32
|
+
|
|
33
|
+
# Execute
|
|
34
|
+
agent-office --sqlite ./data.db send-message \
|
|
35
|
+
--from "Alice" \
|
|
36
|
+
--to "Bob" "Charlie" \
|
|
37
|
+
--body "Task complete. Please review."
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
## JSON Input Format
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
agent-office --sqlite ./data.db send-message \
|
|
44
|
+
--json '{
|
|
45
|
+
"from": "Alice",
|
|
46
|
+
"to": ["Bob", "Charlie"],
|
|
47
|
+
"body": "Task complete. Please review."
|
|
48
|
+
}'
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
## Important Notes
|
|
52
|
+
|
|
53
|
+
- Recipients must exist as coworkers
|
|
54
|
+
- Multiple recipients can be specified
|
|
55
|
+
- Messages are tracked with read/unread status
|
|
56
|
+
- Use `check-unread-messages` to poll for responses
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: agent-office-task-management
|
|
3
|
+
version: 1.0.0
|
|
4
|
+
metadata:
|
|
5
|
+
description: Manage tasks in the Kanban board
|
|
6
|
+
mutating: true
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Task Management Skill
|
|
10
|
+
|
|
11
|
+
This skill guides agents on managing tasks in the agent-office Kanban system.
|
|
12
|
+
|
|
13
|
+
## Invariants
|
|
14
|
+
|
|
15
|
+
- **Always use --dry-run for mutating operations** (add-task, move-task, assign-task, delete-task)
|
|
16
|
+
- **Always use --fields** when listing tasks to limit response size
|
|
17
|
+
- Tasks must move through columns in logical order: idea → approved idea → working on → ready for review → done
|
|
18
|
+
- Check task dependencies before moving to "working on"
|
|
19
|
+
|
|
20
|
+
## Task Board Columns
|
|
21
|
+
|
|
22
|
+
1. `idea` - New proposals (default)
|
|
23
|
+
2. `approved idea` - Approved, ready to start
|
|
24
|
+
3. `working on` - In progress
|
|
25
|
+
4. `blocked` - Blocked by dependencies/issues
|
|
26
|
+
5. `ready for review` - Awaiting review
|
|
27
|
+
6. `done` - Completed
|
|
28
|
+
|
|
29
|
+
## Best Practices
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
# List tasks with field filtering (context window discipline)
|
|
33
|
+
agent-office --sqlite ./data.db list-tasks \
|
|
34
|
+
--fields id,title,column,assignee
|
|
35
|
+
|
|
36
|
+
# Add task with validation
|
|
37
|
+
agent-office --sqlite ./data.db add-task \
|
|
38
|
+
--title "Implement auth" \
|
|
39
|
+
--column "idea" \
|
|
40
|
+
--assignee "Alice" \
|
|
41
|
+
--dry-run
|
|
42
|
+
|
|
43
|
+
# Move task through workflow
|
|
44
|
+
agent-office --sqlite ./data.db move-task \
|
|
45
|
+
--id 42 \
|
|
46
|
+
--column "working on"
|
|
47
|
+
|
|
48
|
+
# Assign to reviewer
|
|
49
|
+
agent-office --sqlite ./data.db assign-task \
|
|
50
|
+
--id 42 \
|
|
51
|
+
--assignee "ReviewerBot"
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
## JSON Input Format
|
|
55
|
+
|
|
56
|
+
```bash
|
|
57
|
+
agent-office --sqlite ./data.db add-task \
|
|
58
|
+
--json '{
|
|
59
|
+
"title": "Implement auth",
|
|
60
|
+
"description": "Add JWT authentication",
|
|
61
|
+
"column": "idea",
|
|
62
|
+
"assignee": "Alice"
|
|
63
|
+
}'
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
## Context Window Discipline
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
# Bad - returns all fields for all tasks
|
|
70
|
+
agent-office --sqlite ./data.db list-tasks
|
|
71
|
+
|
|
72
|
+
# Good - only return needed fields
|
|
73
|
+
agent-office --sqlite ./data.db list-tasks \
|
|
74
|
+
--fields id,title,column
|
|
75
|
+
|
|
76
|
+
# Better - filter then field mask
|
|
77
|
+
agent-office --sqlite ./data.db list-tasks \
|
|
78
|
+
--column "working on" \
|
|
79
|
+
--fields id,title,assignee
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
## Related Commands
|
|
83
|
+
|
|
84
|
+
- `task-stats` - Overview of tasks by column
|
|
85
|
+
- `task-history` - View task's column transitions
|
|
86
|
+
- `list-task-columns` - Show valid column names
|