src/skills/builtin/profile/SKILL.md
Maintain and discover updates for user/profile.md — what belongs, how to edit, daily discovery sweeps, and refinement passes
npx skillsauth add mcarcaso/phousevito profileInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Use this skill whenever you are about to edit user/profile.md, run a profile discovery sweep, or refine/clean the profile.
user/profile.md is the durable record of who the user is: identity, people, stable preferences, projects, interests, routines, and strong opinions they expect remembered.
Keep the profile lean, durable, and useful. Better to skip a borderline fact than turn the profile into a junk drawer.
Update when a conversation reveals durable, high-signal facts:
Do not add:
Before editing:
user/profile.md.Use existing profile sections. Common sections:
## Basics## Family## Work## People## Interests## Preferences## Life## Notes sparinglyDo not invent new sections unless truly necessary.
When touching the profile:
Use this when asked to “run profile discovery,” “profile sweep,” “daily profile update,” or similar.
Default window: last 24 hours across all sessions.
Use the message database through the history-search conventions. Example:
sqlite3 user/vito.db <<'SQL'
SELECT
COUNT(*) AS total_messages,
SUM(CASE WHEN type='user' THEN 1 ELSE 0 END) AS user_messages,
SUM(LENGTH(CAST(content AS TEXT))) AS total_chars,
SUM(CASE WHEN type='user' THEN LENGTH(CAST(content AS TEXT)) ELSE 0 END) AS user_chars
FROM messages
WHERE timestamp >= (strftime('%s','now','-24 hours') * 1000)
AND type IN ('user','assistant');
SQL
Use raw transcript mode when manageable, roughly:
user_messages <= 80user_chars <= 40000total_chars <= 120000Pull exact messages:
sqlite3 user/vito.db <<'SQL'
.mode json
SELECT
session_id,
datetime(timestamp/1000,'unixepoch','localtime') AS time,
type,
author,
content
FROM messages
WHERE timestamp >= (strftime('%s','now','-24 hours') * 1000)
AND type IN ('user','assistant')
ORDER BY session_id, timestamp ASC;
SQL
Use semantic probe mode when raw transcript would be too large. Run broad durable-fact probes, then fetch exact surrounding messages before editing. Example probes:
node src/skills/builtin/semantic-history-search/search-memory.mjs "durable user preference changed going forward remember default" --limit 8
node src/skills/builtin/semantic-history-search/search-memory.mjs "family wife parents siblings personal update durable" --limit 8
node src/skills/builtin/semantic-history-search/search-memory.mjs "tools workflow coding UI dashboard durable preference" --limit 8
node src/skills/builtin/semantic-history-search/search-memory.mjs "fitness injury training workout durable preference equipment" --limit 8
node src/skills/builtin/semantic-history-search/search-memory.mjs "travel packing hotel airport durable preference" --limit 8
node src/skills/builtin/semantic-history-search/search-memory.mjs "music guitar Bible music durable preference" --limit 8
Apply only when the candidate is:
Strong signals include:
Edit user/profile.md directly. Apply only high-confidence changes. Skip uncertain candidates and mention them in the final note if useful.
Keep the final report short:
Profile discovery done.
Applied:
- Added X.
- Updated Y.
Skipped:
- Z — too speculative / trip-specific / already present.
If nothing changed:
Profile discovery done. No high-confidence profile updates found.
Use when asked to refine/clean/audit the profile.
Do routine profile updates quietly without asking. Do not add sensitive facts unless they are clearly useful and expected to be remembered. If unsure, skip.
tools
Browse the web, take screenshots, and extract content from web pages using Playwright MCP
tools
Generic MCP client bridge for skills — discover and call tools from MCP servers declared in SKILL.md frontmatter or passed as URLs
data-ai
How to update user/profile.md — what's profile-worthy, where to put it, when to clean up. Read this skill any time you're about to Edit profile.md.
data-ai
Search and retrieve exact messages from the conversation database using SQL queries — timestamps, keywords, sessions, counts