u-foo 3.0.13 → 3.0.15

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.
@@ -1,156 +0,0 @@
1
- ---
2
- name: uctx
3
- description: |
4
- Quick ufoo context status check. Shows decisions and context health.
5
- Use when: (1) Starting a session, (2) User says "uctx", (3) Need quick context refresh.
6
- For full initialization, use uinit (ufoo init CLI).
7
- ---
8
-
9
- # /uctx - AI Context Quick Check
10
-
11
- ## What this does
12
-
13
- Fast context check for daily use. Run at session start or anytime.
14
-
15
- Pre-flight reminder:
16
- - Default is no new decision.
17
- - Write a decision only for important architectural choices, trade-off outcomes, cross-agent coordination, or precedent-setting integration contracts.
18
- - Do NOT write decisions for routine tasks, simple bug fixes, trivial findings, or generic plan/evaluation/recommendation requests.
19
- - Durable project facts belong in shared memory, not decisions.
20
- Use: `ufoo ctx decisions new "<Title>"`
21
-
22
- ## Decision format (canonical)
23
-
24
- The context module tracks decisions only. Durable shared facts belong in shared memory. Decisions live at:
25
- `<project>/.ufoo/context/decisions/`
26
-
27
- Decision index (JSONL):
28
- `<project>/.ufoo/context/decisions.jsonl`
29
-
30
- Generate/update the index:
31
- ```bash
32
- ufoo ctx decisions index
33
- ```
34
-
35
- Each JSONL row includes:
36
- - `ts` (ISO timestamp)
37
- - `type` (`decision` or `decision_status`)
38
- - `file` (decision filename)
39
- - `author` (decision author or resolver)
40
-
41
- Create a new decision (only when the high-threshold rule above requires it):
42
- ```bash
43
- ufoo ctx decisions new "Short Title"
44
- ```
45
-
46
- **File naming:** `NNNN-<nickname>-short-title.md` (4-digit prefix + nickname + kebab-case slug).
47
-
48
- **Template for new decisions:**
49
- ```yaml
50
- ---
51
- status: open
52
- nickname: <nickname>
53
- ---
54
- # DECISION NNNN: <Title>
55
-
56
- Date: YYYY-MM-DD
57
- Author: <agent>
58
- Nickname: <nickname>
59
-
60
- Context:
61
- What led to this decision?
62
-
63
- Decision:
64
- What is now considered true?
65
-
66
- Implications:
67
- What must follow from this?
68
- ```
69
-
70
- **Status updates (only edit frontmatter):**
71
- ```yaml
72
- ---
73
- status: resolved
74
- resolved_by: <agent>
75
- resolved_at: YYYY-MM-DD
76
- ---
77
- ```
78
-
79
- Rules:
80
- - Decisions are append-only. Do not rewrite past content.
81
- - Only update the frontmatter when changing status.
82
-
83
- ## Workflow
84
-
85
- ### 1. Verify structure exists
86
-
87
- Check `.ufoo/context/decisions/` exists. If missing, tell user to run `ufoo init`.
88
-
89
- ### 2. List all decisions
90
-
91
- ```bash
92
- ufoo ctx decisions -l
93
- ```
94
-
95
- ### 3. Show latest decision
96
-
97
- ```bash
98
- ufoo ctx decisions -n 1
99
- ```
100
-
101
- ### 4. Report status
102
-
103
- Brief summary:
104
- - Open decisions count (need attention)
105
- - Total decisions count
106
- - Any issues found
107
- - Ready to work
108
-
109
- ## Output format
110
-
111
- ```
112
- === ufoo context status ===
113
- Project: <cwd>
114
- Decisions: N open, M total
115
- Latest open: DECISION XXXX: <title>
116
-
117
- [Latest decision content]
118
-
119
- Status: Ready ✓
120
- ```
121
-
122
- ## Handling Open Decisions
123
-
124
- When there are open decisions, you MUST:
125
-
126
- ### 1. Read and understand
127
- - Read the full content of each open decision
128
- - Understand what other agents decided
129
- - This is "syncing their memory to yours"
130
-
131
- ### 2. Check if action needed
132
- - Does the decision require implementation?
133
- - Is something already done that needs verification?
134
- - Are there implications you need to follow?
135
-
136
- ### 3. Execute if needed
137
- - If the decision requires action, do it first
138
- - Verify the action was successful
139
-
140
- ### 4. Then resolve
141
- Only after understanding and completing any required actions:
142
- ```yaml
143
- ---
144
- status: resolved
145
- resolved_by: <your-agent-name>
146
- resolved_at: <date>
147
- ---
148
- ```
149
-
150
- **NEVER resolve blindly.** Reading the title is not enough.
151
-
152
- ## Notes
153
-
154
- - Script defaults to showing only `open` decisions
155
- - Resolved decisions are skipped (already processed)
156
- - Use `-s all` to see all decisions regardless of status
@@ -1,76 +0,0 @@
1
- ---
2
- name: uinit
3
- description: |
4
- Initialize ufoo workspace state in current project.
5
- Use when: (1) new project needs context/bus enabled, (2) user inputs /uinit or /ufoo init.
6
- Provides interactive target selection, defaults to all selected.
7
- ---
8
-
9
- # uinit
10
-
11
- Initialize ufoo workspace state in current project.
12
-
13
- ## Trigger
14
-
15
- User inputs `/uinit` or `/ufoo init`
16
-
17
- ## Execution Flow
18
-
19
- ### 1. Ask user to select init targets
20
-
21
- Use AskUserQuestion tool, provide multi-select, default all selected:
22
-
23
- ```
24
- Please select ufoo state to enable:
25
-
26
- ☑ context - Shared context protocol (.ufoo/context/)
27
- ☑ bus - Agent event bus (.ufoo/bus/ + .ufoo/agent/)
28
- ```
29
-
30
- Options:
31
- - `context` (recommended) - Shared context, sparse decision log for major plan-level choices
32
- - `bus` (recommended) - Multi-agent communication, task delegation, message passing
33
-
34
- Default selected: context, bus
35
-
36
- ### 2. Execute initialization
37
-
38
- Based on user selection, execute:
39
-
40
- ```bash
41
- ufoo init --targets <selected_targets> --project $(pwd)
42
- ```
43
-
44
- ### 3. If bus target selected, auto-join bus
45
-
46
- ```bash
47
- SUBSCRIBER="${UFOO_SUBSCRIBER_ID:-$(ufoo bus whoami 2>/dev/null || true)}"
48
- if [ -n "$SUBSCRIBER" ]; then
49
- echo "Using existing subscriber ID: $SUBSCRIBER"
50
- else
51
- SUBSCRIBER=$(ufoo bus join | tail -1)
52
- echo "Joined event bus: $SUBSCRIBER"
53
- fi
54
- ```
55
-
56
- ### 4. Report initialization result
57
-
58
- ```
59
- === ufoo initialization complete ===
60
-
61
- Enabled ufoo state:
62
- ✓ core memory → .ufoo/memory/
63
- ✓ context → .ufoo/context/
64
- ✓ bus → .ufoo/bus/ + .ufoo/agent/
65
-
66
- My identity: claude-code:<session-id>
67
-
68
- Next steps:
69
- - Run /ctx to check context status
70
- - See AGENTS.md for protocol rules
71
- ```
72
-
73
- ## Notes
74
-
75
- - If .ufoo/memory, .ufoo/context, .ufoo/bus, or .ufoo/agent already exists, skip creation
76
- - After initialization, reuse existing subscriber ID first, join only as fallback (if bus enabled)
@@ -1,36 +0,0 @@
1
- ---
2
- name: ustatus
3
- description: |
4
- Unified ufoo status check. Shows banner, unread bus messages, and open decisions.
5
- Use when: (1) User asks for status, (2) Quick health check, (3) Before starting work.
6
- ---
7
-
8
- # ufoo Status
9
-
10
- ## What this does
11
-
12
- Quick, unified status view:
13
- - Banner
14
- - Unread bus messages (unacked queues)
15
- - Open decisions
16
-
17
- ## Workflow
18
-
19
- ### 1. Verify structure exists
20
-
21
- Check `.ufoo/` exists. If missing, tell user to run `ufoo init`.
22
-
23
- ### 2. Run status command
24
-
25
- ```bash
26
- ufoo status
27
- ```
28
-
29
- ### 3. Report status
30
-
31
- Briefly summarize:
32
- - Unread messages count
33
- - Open decisions count
34
- - Any immediate action needed
35
-
36
- If unread messages > 0, advise running `ufoo bus check <subscriber>` and `ufoo bus ack <subscriber>` after handling.