youmd 0.4.9 → 0.6.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/dist/__tests__/api.test.d.ts +2 -0
- package/dist/__tests__/api.test.d.ts.map +1 -0
- package/dist/__tests__/api.test.js +84 -0
- package/dist/__tests__/api.test.js.map +1 -0
- package/dist/__tests__/compiler.test.d.ts +2 -0
- package/dist/__tests__/compiler.test.d.ts.map +1 -0
- package/dist/__tests__/compiler.test.js +127 -0
- package/dist/__tests__/compiler.test.js.map +1 -0
- package/dist/__tests__/config.test.d.ts +2 -0
- package/dist/__tests__/config.test.d.ts.map +1 -0
- package/dist/__tests__/config.test.js +79 -0
- package/dist/__tests__/config.test.js.map +1 -0
- package/dist/__tests__/decompile.test.d.ts +2 -0
- package/dist/__tests__/decompile.test.d.ts.map +1 -0
- package/dist/__tests__/decompile.test.js +102 -0
- package/dist/__tests__/decompile.test.js.map +1 -0
- package/dist/__tests__/hash.test.d.ts +2 -0
- package/dist/__tests__/hash.test.d.ts.map +1 -0
- package/dist/__tests__/hash.test.js +44 -0
- package/dist/__tests__/hash.test.js.map +1 -0
- package/dist/__tests__/integration.test.d.ts +2 -0
- package/dist/__tests__/integration.test.d.ts.map +1 -0
- package/dist/__tests__/integration.test.js +277 -0
- package/dist/__tests__/integration.test.js.map +1 -0
- package/dist/__tests__/skill-renderer.test.d.ts +2 -0
- package/dist/__tests__/skill-renderer.test.d.ts.map +1 -0
- package/dist/__tests__/skill-renderer.test.js +68 -0
- package/dist/__tests__/skill-renderer.test.js.map +1 -0
- package/dist/commands/add.d.ts.map +1 -1
- package/dist/commands/add.js +6 -3
- package/dist/commands/add.js.map +1 -1
- package/dist/commands/agents.d.ts +2 -0
- package/dist/commands/agents.d.ts.map +1 -0
- package/dist/commands/agents.js +93 -0
- package/dist/commands/agents.js.map +1 -0
- package/dist/commands/build.d.ts.map +1 -1
- package/dist/commands/build.js +96 -21
- package/dist/commands/build.js.map +1 -1
- package/dist/commands/chat.d.ts.map +1 -1
- package/dist/commands/chat.js +110 -11
- package/dist/commands/chat.js.map +1 -1
- package/dist/commands/diff.d.ts +1 -1
- package/dist/commands/diff.d.ts.map +1 -1
- package/dist/commands/diff.js +402 -16
- package/dist/commands/diff.js.map +1 -1
- package/dist/commands/export.js +1 -1
- package/dist/commands/export.js.map +1 -1
- package/dist/commands/init.d.ts +1 -0
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +138 -0
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/link.d.ts +1 -0
- package/dist/commands/link.d.ts.map +1 -1
- package/dist/commands/link.js +77 -13
- package/dist/commands/link.js.map +1 -1
- package/dist/commands/login.d.ts.map +1 -1
- package/dist/commands/login.js +48 -27
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/logs.d.ts +7 -0
- package/dist/commands/logs.d.ts.map +1 -0
- package/dist/commands/logs.js +115 -0
- package/dist/commands/logs.js.map +1 -0
- package/dist/commands/mcp.d.ts +6 -0
- package/dist/commands/mcp.d.ts.map +1 -0
- package/dist/commands/mcp.js +258 -0
- package/dist/commands/mcp.js.map +1 -0
- package/dist/commands/preview.d.ts.map +1 -1
- package/dist/commands/preview.js +191 -7
- package/dist/commands/preview.js.map +1 -1
- package/dist/commands/private.d.ts.map +1 -1
- package/dist/commands/private.js +248 -0
- package/dist/commands/private.js.map +1 -1
- package/dist/commands/prompts.d.ts +12 -0
- package/dist/commands/prompts.d.ts.map +1 -0
- package/dist/commands/prompts.js +245 -0
- package/dist/commands/prompts.js.map +1 -0
- package/dist/commands/publish.d.ts.map +1 -1
- package/dist/commands/publish.js +69 -6
- package/dist/commands/publish.js.map +1 -1
- package/dist/commands/pull.d.ts.map +1 -1
- package/dist/commands/pull.js +110 -137
- package/dist/commands/pull.js.map +1 -1
- package/dist/commands/push.d.ts +1 -0
- package/dist/commands/push.d.ts.map +1 -1
- package/dist/commands/push.js +236 -38
- package/dist/commands/push.js.map +1 -1
- package/dist/commands/register.d.ts.map +1 -1
- package/dist/commands/register.js +40 -84
- package/dist/commands/register.js.map +1 -1
- package/dist/commands/skill.d.ts +8 -0
- package/dist/commands/skill.d.ts.map +1 -0
- package/dist/commands/skill.js +1226 -0
- package/dist/commands/skill.js.map +1 -0
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +221 -69
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/sync.d.ts.map +1 -1
- package/dist/commands/sync.js +12 -0
- package/dist/commands/sync.js.map +1 -1
- package/dist/commands/whoami.d.ts.map +1 -1
- package/dist/commands/whoami.js +62 -33
- package/dist/commands/whoami.js.map +1 -1
- package/dist/index.js +187 -6
- package/dist/index.js.map +1 -1
- package/dist/lib/api.d.ts +169 -12
- package/dist/lib/api.d.ts.map +1 -1
- package/dist/lib/api.js +183 -33
- package/dist/lib/api.js.map +1 -1
- package/dist/lib/ascii.d.ts.map +1 -1
- package/dist/lib/ascii.js +20 -48
- package/dist/lib/ascii.js.map +1 -1
- package/dist/lib/compiler.d.ts +16 -33
- package/dist/lib/compiler.d.ts.map +1 -1
- package/dist/lib/compiler.js +499 -84
- package/dist/lib/compiler.js.map +1 -1
- package/dist/lib/config.d.ts +27 -0
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +50 -0
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/decompile.d.ts +21 -0
- package/dist/lib/decompile.d.ts.map +1 -0
- package/dist/lib/decompile.js +304 -0
- package/dist/lib/decompile.js.map +1 -0
- package/dist/lib/hash.d.ts +3 -0
- package/dist/lib/hash.d.ts.map +1 -0
- package/dist/lib/hash.js +31 -0
- package/dist/lib/hash.js.map +1 -0
- package/dist/lib/onboarding.d.ts +4 -4
- package/dist/lib/onboarding.d.ts.map +1 -1
- package/dist/lib/onboarding.js +228 -81
- package/dist/lib/onboarding.js.map +1 -1
- package/dist/lib/skill-catalog.d.ts +57 -0
- package/dist/lib/skill-catalog.d.ts.map +1 -0
- package/dist/lib/skill-catalog.js +245 -0
- package/dist/lib/skill-catalog.js.map +1 -0
- package/dist/lib/skill-renderer.d.ts +55 -0
- package/dist/lib/skill-renderer.d.ts.map +1 -0
- package/dist/lib/skill-renderer.js +382 -0
- package/dist/lib/skill-renderer.js.map +1 -0
- package/dist/lib/skills.d.ts +130 -0
- package/dist/lib/skills.d.ts.map +1 -0
- package/dist/lib/skills.js +876 -0
- package/dist/lib/skills.js.map +1 -0
- package/dist/lib/vault.d.ts +40 -0
- package/dist/lib/vault.d.ts.map +1 -0
- package/dist/lib/vault.js +187 -0
- package/dist/lib/vault.js.map +1 -0
- package/dist/mcp/server.d.ts +21 -0
- package/dist/mcp/server.d.ts.map +1 -0
- package/dist/mcp/server.js +1283 -0
- package/dist/mcp/server.js.map +1 -0
- package/examples/houston/directives/agent.md +13 -0
- package/examples/houston/preferences/agent.md +14 -0
- package/examples/houston/profile/about.md +15 -0
- package/examples/houston/profile/links.md +10 -0
- package/examples/houston/profile/projects.md +37 -0
- package/examples/houston/profile/values.md +9 -0
- package/examples/houston/voice/voice.md +13 -0
- package/examples/jordan/directives/agent.md +13 -0
- package/examples/jordan/preferences/agent.md +16 -0
- package/examples/jordan/profile/about.md +15 -0
- package/examples/jordan/profile/links.md +10 -0
- package/examples/jordan/profile/projects.md +29 -0
- package/examples/jordan/profile/values.md +9 -0
- package/examples/jordan/voice/voice.md +12 -0
- package/examples/priya/directives/agent.md +13 -0
- package/examples/priya/preferences/agent.md +15 -0
- package/examples/priya/profile/about.md +15 -0
- package/examples/priya/profile/links.md +9 -0
- package/examples/priya/profile/projects.md +28 -0
- package/examples/priya/profile/values.md +9 -0
- package/examples/priya/voice/voice.md +12 -0
- package/package.json +15 -6
- package/skills/claude-md-generator.md +91 -0
- package/skills/meta-improve.md +84 -0
- package/skills/proactive-context-fill.md +52 -0
- package/skills/project-context-init.md +77 -0
- package/skills/voice-sync.md +89 -0
- package/skills/you-logs.md +71 -0
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: meta-improve
|
|
3
|
+
version: 1.0.0
|
|
4
|
+
scope: shared
|
|
5
|
+
identity_fields: [preferences.agent, directives.agent]
|
|
6
|
+
description: "Self-improvement protocol — agents review their own effectiveness and propose identity updates"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# meta-improve
|
|
10
|
+
|
|
11
|
+
The feedback loop that makes your identity smarter over time. Agents review what worked and what didn't, then propose updates to your identity bundle.
|
|
12
|
+
|
|
13
|
+
## Identity Context (resolved at review time)
|
|
14
|
+
|
|
15
|
+
- **Agent preferences:** {{preferences.agent}}
|
|
16
|
+
- **Directives:** {{directives.agent}}
|
|
17
|
+
|
|
18
|
+
## What This Skill Does
|
|
19
|
+
|
|
20
|
+
1. Read skill-metrics.json for usage data (which skills run, success/fail rates)
|
|
21
|
+
2. Analyze patterns:
|
|
22
|
+
- Which skills get used most?
|
|
23
|
+
- Which identity fields get referenced most?
|
|
24
|
+
- Are there gaps? (skills that should exist but don't)
|
|
25
|
+
- Are there stale entries? (skills never used)
|
|
26
|
+
3. Propose changes:
|
|
27
|
+
- New directives based on repeated corrections
|
|
28
|
+
- Voice refinements based on agent interactions
|
|
29
|
+
- Skill additions based on detected workflow patterns
|
|
30
|
+
- Pruning of unused skills
|
|
31
|
+
4. Present proposals for user approval (never auto-apply)
|
|
32
|
+
|
|
33
|
+
## Metrics Tracked
|
|
34
|
+
|
|
35
|
+
```json
|
|
36
|
+
{
|
|
37
|
+
"skills": {
|
|
38
|
+
"claude-md-generator": {
|
|
39
|
+
"uses": 12,
|
|
40
|
+
"lastUsed": "2026-03-25T...",
|
|
41
|
+
"avgDuration": 1200,
|
|
42
|
+
"successRate": 0.92
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
"identityFields": {
|
|
46
|
+
"voice.overall": { "references": 45 },
|
|
47
|
+
"preferences.agent": { "references": 38 }
|
|
48
|
+
},
|
|
49
|
+
"proposals": []
|
|
50
|
+
}
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
## MCP Server Health Check
|
|
54
|
+
|
|
55
|
+
As part of the self-improvement review, meta-improve should also check MCP server health:
|
|
56
|
+
|
|
57
|
+
1. **Is the MCP server configured?** Check if `youmd mcp --json` output exists in the user's MCP client config (e.g., `~/.claude/claude_desktop_config.json` or `.claude/settings.json`).
|
|
58
|
+
2. **Is the server reachable?** Call `get_remote_status` to verify authentication and sync state.
|
|
59
|
+
3. **Are tools being used?** Check if agents are actively calling MCP tools. Low usage may indicate misconfiguration.
|
|
60
|
+
|
|
61
|
+
### Suggesting MCP Setup
|
|
62
|
+
|
|
63
|
+
If the MCP server is NOT configured, meta-improve should propose setup as an improvement:
|
|
64
|
+
|
|
65
|
+
```
|
|
66
|
+
Proposal: Configure You.md MCP server
|
|
67
|
+
Reason: Your identity context is only available via static files. With the MCP server,
|
|
68
|
+
agents get live access to memories, project context, and can save learnings in real time.
|
|
69
|
+
|
|
70
|
+
Setup:
|
|
71
|
+
1. Run: youmd mcp --json
|
|
72
|
+
2. Add the output to your MCP client config
|
|
73
|
+
3. Restart your agent (Claude Code, Cursor, etc.)
|
|
74
|
+
|
|
75
|
+
Impact: All agents get live identity context instead of stale snapshots.
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
If the MCP server IS configured but `get_remote_status` shows the local bundle is out of sync with remote, propose a `compile_bundle` + `push_bundle` cycle.
|
|
79
|
+
|
|
80
|
+
## When To Use
|
|
81
|
+
|
|
82
|
+
- Periodically via `youmd skill improve`
|
|
83
|
+
- After a significant number of skill uses (auto-suggested)
|
|
84
|
+
- When onboarding a new project (review what's working)
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: proactive-context-fill
|
|
3
|
+
version: 1.0.0
|
|
4
|
+
scope: shared
|
|
5
|
+
identity_fields: [profile.projects, profile.about, preferences.agent, voice.overall]
|
|
6
|
+
description: Auto-detects empty or thin context sections in the user's you.md bundle and proactively offers to populate them.
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# proactive-context-fill
|
|
10
|
+
|
|
11
|
+
Use this skill when starting a new session with a user who has a you.md identity bundle. It detects gaps and offers to fill them.
|
|
12
|
+
|
|
13
|
+
## Detection rules
|
|
14
|
+
|
|
15
|
+
1. **Projects:** If profile/projects.md lists projects but private/projects/{name}/ subdirectories don't exist or are empty, offer to scaffold each one.
|
|
16
|
+
2. **Voice:** If voice/voice.md is < 100 chars, offer to analyze the user's writing samples from sources/ to generate a voice profile.
|
|
17
|
+
3. **Directives:** If directives/agent.md is empty or generic, offer to extract specific directives from the user's preferences and recent conversations.
|
|
18
|
+
4. **Sources:** If profile/links.md has social URLs but sources/ is empty, offer to scrape and add them.
|
|
19
|
+
5. **Memories:** If memory has < 5 entries, offer to seed initial memories from the current conversation.
|
|
20
|
+
|
|
21
|
+
## Workflow
|
|
22
|
+
|
|
23
|
+
1. Scan the bundle on session start (read the relevant sections)
|
|
24
|
+
2. Build a list of detected gaps
|
|
25
|
+
3. Present the list to the user concisely
|
|
26
|
+
4. Offer YES/SKIP/ASK_LATER for each gap
|
|
27
|
+
5. Execute the chosen actions in batches
|
|
28
|
+
6. Allow skipping individual sub-tasks (e.g. "scaffold all projects but skip BAMF.ai")
|
|
29
|
+
|
|
30
|
+
## Anti-patterns
|
|
31
|
+
|
|
32
|
+
- DO NOT lecture the user about how their bundle could be better
|
|
33
|
+
- DO NOT make the user feel guilty about empty sections
|
|
34
|
+
- DO NOT auto-fill without asking
|
|
35
|
+
- DO NOT ask 10 questions at once — batch in groups of 2-3
|
|
36
|
+
|
|
37
|
+
## Example output
|
|
38
|
+
|
|
39
|
+
```
|
|
40
|
+
i noticed a few things i could help with:
|
|
41
|
+
|
|
42
|
+
1. your projects/ dir is empty (your profile lists 6 projects)
|
|
43
|
+
2. voice profile is thin (~50 chars vs typical 300+)
|
|
44
|
+
3. no directives set yet
|
|
45
|
+
|
|
46
|
+
want me to:
|
|
47
|
+
[a] scaffold all 6 project subdirectories with quick questions per project
|
|
48
|
+
[b] generate a voice profile from your linkedin posts and tweets
|
|
49
|
+
[c] extract directives from your existing preferences
|
|
50
|
+
|
|
51
|
+
reply with letters (e.g. "a c") or skip entirely.
|
|
52
|
+
```
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: project-context-init
|
|
3
|
+
version: 1.0.0
|
|
4
|
+
scope: project
|
|
5
|
+
identity_fields: [preferences.agent, profile.about]
|
|
6
|
+
description: "Scaffold a project-context/ directory with PRD, TODO, features, changelog, and decision log"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# project-context-init
|
|
10
|
+
|
|
11
|
+
Scaffold a complete project-context/ directory in any repo — the same structure Houston uses across all his projects. Pre-populated with your identity and agent preferences.
|
|
12
|
+
|
|
13
|
+
## Identity Context (resolved at install time)
|
|
14
|
+
|
|
15
|
+
- **Agent preferences:** {{preferences.agent}}
|
|
16
|
+
- **About you:** {{profile.about}}
|
|
17
|
+
|
|
18
|
+
## What This Skill Does
|
|
19
|
+
|
|
20
|
+
1. Detect project root (walk up to .git, package.json, etc.)
|
|
21
|
+
2. Create `project-context/` directory with:
|
|
22
|
+
- `PRD.md` — Product requirements (empty template with your identity header)
|
|
23
|
+
- `TODO.md` — Task tracking
|
|
24
|
+
- `FEATURES.md` — Feature inventory with status
|
|
25
|
+
- `CHANGELOG.md` — Dated change log
|
|
26
|
+
- `ARCHITECTURE.md` — System architecture notes
|
|
27
|
+
- `CURRENT_STATE.md` — What's deployed, what's broken
|
|
28
|
+
- `STYLE_GUIDE.md` — Design system reference
|
|
29
|
+
- `feature-requests-active.md` — Active request tracker
|
|
30
|
+
3. Pre-populate headers with your identity
|
|
31
|
+
4. Skip files that already exist (never overwrite)
|
|
32
|
+
|
|
33
|
+
## Directory Structure Created
|
|
34
|
+
|
|
35
|
+
```
|
|
36
|
+
project-context/
|
|
37
|
+
├── PRD.md
|
|
38
|
+
├── TODO.md
|
|
39
|
+
├── FEATURES.md
|
|
40
|
+
├── CHANGELOG.md
|
|
41
|
+
├── ARCHITECTURE.md
|
|
42
|
+
├── CURRENT_STATE.md
|
|
43
|
+
├── STYLE_GUIDE.md
|
|
44
|
+
└── feature-requests-active.md
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Analytics & Verified Badges
|
|
48
|
+
|
|
49
|
+
Projects tracked by You.md can leverage the analytics pane and verified badge system:
|
|
50
|
+
|
|
51
|
+
### Analytics Pane
|
|
52
|
+
|
|
53
|
+
Once a project is registered and pushed, the You.md dashboard shows:
|
|
54
|
+
|
|
55
|
+
- **Activity timeline** — commits, memory additions, context updates over time
|
|
56
|
+
- **Agent usage** — which agents accessed this project's context and how often
|
|
57
|
+
- **Identity field coverage** — which sections of your identity are referenced by project agents
|
|
58
|
+
- **Skill usage** — which skills are triggered in this project's context
|
|
59
|
+
|
|
60
|
+
To enable analytics, ensure the project is linked via `youmd project init <name>` and that you push regularly with `youmd push`.
|
|
61
|
+
|
|
62
|
+
### Verified Badges
|
|
63
|
+
|
|
64
|
+
Projects with complete context (PRD, architecture, and at least 5 memories) earn a verified badge on your public profile. The badge signals to other agents and collaborators that this project has rich, maintained context. Badge criteria:
|
|
65
|
+
|
|
66
|
+
- PRD.md exists and is non-empty
|
|
67
|
+
- ARCHITECTURE.md exists and is non-empty
|
|
68
|
+
- At least 5 project memories recorded
|
|
69
|
+
- Last push within the past 30 days
|
|
70
|
+
|
|
71
|
+
The badge appears on your you.md profile page and in context links shared via `create_context_link`.
|
|
72
|
+
|
|
73
|
+
## When To Use
|
|
74
|
+
|
|
75
|
+
- Starting any new project
|
|
76
|
+
- As part of `youmd skill init-project` (compound command)
|
|
77
|
+
- When adopting the project-context pattern in an existing repo
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: voice-sync
|
|
3
|
+
version: 1.0.0
|
|
4
|
+
scope: shared
|
|
5
|
+
identity_fields: [voice.overall, voice.writing, voice.speaking]
|
|
6
|
+
description: "Sync your voice profile across all agent tools — consistent tone everywhere"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# voice-sync
|
|
10
|
+
|
|
11
|
+
Keep your voice profile in sync across every agent tool you use. When your voice changes in one place, it propagates everywhere.
|
|
12
|
+
|
|
13
|
+
## Identity Context (resolved at sync time)
|
|
14
|
+
|
|
15
|
+
- **Overall voice:** {{voice.overall}}
|
|
16
|
+
- **Writing voice:** {{voice.writing}}
|
|
17
|
+
- **Speaking voice:** {{voice.speaking}}
|
|
18
|
+
|
|
19
|
+
## What This Skill Does
|
|
20
|
+
|
|
21
|
+
1. Read your current voice profile from the identity bundle
|
|
22
|
+
2. Generate agent-specific voice instructions for:
|
|
23
|
+
- **Claude Code** (.claude/skills/youmd/voice.md)
|
|
24
|
+
- **Cursor** (.cursor/rules/youmd-voice.md)
|
|
25
|
+
- **Custom agents** (.youmd/skills/voice-context.md)
|
|
26
|
+
3. Re-render on every `youmd skill sync` or `youmd push`
|
|
27
|
+
4. Respect scope — shared voice propagates to all projects
|
|
28
|
+
|
|
29
|
+
## Sync Targets
|
|
30
|
+
|
|
31
|
+
| Agent | File | Format |
|
|
32
|
+
|---|---|---|
|
|
33
|
+
| Claude Code | .claude/skills/youmd/voice.md | Markdown with voice rules |
|
|
34
|
+
| Cursor | .cursor/rules/youmd-voice.md | Single markdown file |
|
|
35
|
+
| Generic | .youmd/skills/voice-context.md | Universal format |
|
|
36
|
+
|
|
37
|
+
## Template Variables
|
|
38
|
+
|
|
39
|
+
In addition to the core voice fields, the following variables are available for fine-grained voice control:
|
|
40
|
+
|
|
41
|
+
- `{{voice.overall}}` — Full voice description (tone, cadence, personality)
|
|
42
|
+
- `{{voice.writing}}` — Written communication style (emails, docs, comments)
|
|
43
|
+
- `{{voice.speaking}}` — Verbal communication style (meetings, presentations)
|
|
44
|
+
- `{{voice.tone}}` — Short tone descriptor (e.g., "direct, no fluff")
|
|
45
|
+
- `{{voice.formality}}` — Formality level (e.g., "casual-professional")
|
|
46
|
+
- `{{voice.avoid}}` — Patterns to avoid (e.g., "corporate speak, emoji, verbose explanations")
|
|
47
|
+
- `{{profile.about}}` — Brief identity context for attribution
|
|
48
|
+
|
|
49
|
+
## Usage Examples
|
|
50
|
+
|
|
51
|
+
### Claude Code agent config
|
|
52
|
+
|
|
53
|
+
After rendering, paste the output into `.claude/skills/youmd/voice.md`:
|
|
54
|
+
|
|
55
|
+
```markdown
|
|
56
|
+
# Voice Rules
|
|
57
|
+
|
|
58
|
+
Write all responses in this voice: {{voice.overall}}
|
|
59
|
+
|
|
60
|
+
When writing code comments: {{voice.writing}}
|
|
61
|
+
|
|
62
|
+
Avoid: {{voice.avoid}}
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
### Cursor rules file
|
|
66
|
+
|
|
67
|
+
Use in `.cursor/rules/youmd-voice.md`:
|
|
68
|
+
|
|
69
|
+
```markdown
|
|
70
|
+
# Communication Style
|
|
71
|
+
Tone: {{voice.tone}}
|
|
72
|
+
Formality: {{voice.formality}}
|
|
73
|
+
Writing style: {{voice.writing}}
|
|
74
|
+
Never use: {{voice.avoid}}
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
### Custom agent system prompt snippet
|
|
78
|
+
|
|
79
|
+
```
|
|
80
|
+
You are working with {{profile.about}}.
|
|
81
|
+
Match this voice: {{voice.overall}}
|
|
82
|
+
Formality: {{voice.formality}}
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
## When To Use
|
|
86
|
+
|
|
87
|
+
- After updating your voice via `youmd chat`
|
|
88
|
+
- When `youmd skill sync` runs automatically
|
|
89
|
+
- When linking a new agent with `youmd skill link`
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: you-logs
|
|
3
|
+
version: 1.0.0
|
|
4
|
+
scope: shared
|
|
5
|
+
identity_fields: []
|
|
6
|
+
description: View your you.md agent activity log inline. Shows which agents connected to your identity and what they did.
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# you-logs — Agent Activity Log
|
|
10
|
+
|
|
11
|
+
Show recent agent activity for the current user.
|
|
12
|
+
|
|
13
|
+
## Trigger
|
|
14
|
+
- CLI: `/you-logs` in Claude Code, Cursor, or any CLI agent with skills installed
|
|
15
|
+
- Direct: `youmd logs`
|
|
16
|
+
|
|
17
|
+
## What it does
|
|
18
|
+
|
|
19
|
+
Fetches the recent agent activity log from you.md and renders it as a terminal-friendly table showing:
|
|
20
|
+
- Time of activity
|
|
21
|
+
- Agent name (Claude Code, Cursor, ChatGPT, etc.)
|
|
22
|
+
- Action (read, write, push, memory_add, etc.)
|
|
23
|
+
- Resource (which file/section was touched)
|
|
24
|
+
- Bundle version diffs for writes
|
|
25
|
+
|
|
26
|
+
## How to use it
|
|
27
|
+
|
|
28
|
+
When the user types `/you-logs`, run:
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
youmd logs --limit 30
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
If they pass arguments like `/you-logs --agent "Claude Code"` or `/you-logs --action push`, pass those through:
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
youmd logs --limit 30 --agent "Claude Code"
|
|
38
|
+
youmd logs --action push
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
For live monitoring:
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
youmd logs --tail
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
(But warn the user this blocks the terminal until ctrl-c.)
|
|
48
|
+
|
|
49
|
+
## Output format
|
|
50
|
+
|
|
51
|
+
The output looks like:
|
|
52
|
+
|
|
53
|
+
```
|
|
54
|
+
─── recent activity ───
|
|
55
|
+
|
|
56
|
+
14:32 Claude Code read identity
|
|
57
|
+
14:32 Claude Code read memories/all
|
|
58
|
+
14:31 Claude Code read project/current
|
|
59
|
+
14:30 Cursor push bundle v49→v50
|
|
60
|
+
14:28 Claude.ai read ctx/<token>
|
|
61
|
+
14:25 Claude Code read identity
|
|
62
|
+
|
|
63
|
+
6 events — use --tail for live mode
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
Return this output verbatim to the user. Don't summarize. The raw log IS the value — they want to see exactly what happened.
|
|
67
|
+
|
|
68
|
+
## Notes
|
|
69
|
+
- This skill requires `youmd` CLI to be installed and the user to be authenticated (`youmd login`)
|
|
70
|
+
- If authentication fails, suggest: "Run `youmd login` to view your activity log"
|
|
71
|
+
- The data is fetched from the user's you.md account in real-time
|