bundled-skills/user-thoughts/SKILL.md
Persist user decisions and project constraints to mdbase across sessions. Trigger on /user-thoughts or /ustht, or when the user discusses architecture, tech stack, rules, UI/UX, or project memory.
npx skillsauth add FrancoStino/opencode-skills-antigravity user-thoughtsInstall 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.
Across sessions and across agents, project decisions and user constraints are easy to lose. user-thoughts persists those decisions into a project-local mdbase so any future agent can recover the user's intent without re-deriving it from scratch.
The skill records user intent. It does not replace normal task execution. If the user says, "make the button red," the agent should both make the change and record the preference when persistent project memory is useful.
Use this skill when the user states or revises:
/user-thoughts or /ustht.Do not use it for unrelated small talk, transient chatter, or content the user explicitly asks to ignore.
User message -> Agent identifies persistent project intent -> write to #raw/
-> /ustht sortin groups raw entries into #mdbase/
-> /ustht mdbase show exposes the organized memory base
INSTANT_STATUS=off; only explicit skill commands run.INSTANT_STATUS=on and SKILL_STATUS=on; project-relevant user thoughts are written to #raw/ as they appear.ignore start and ignore end mark a temporary interval that should not be recorded.SKILL_STATUS=off pauses instant capture even when INSTANT_STATUS=on. Ignore intervals are context-local and do not persist across sessions.
@/: the installed user-thoughts/ skill directory.~/: the current project working directory.#ustht/: ~/.ustht/.#mdbase/: ~/.ustht/mdbase/.#ignored/: ~/.ustht/ignored/.#raw/: ~/.ustht/raw/.#export/: ~/.ustht/export/..ustht/
├── define.ini
├── README.ai.md
├── raw/
│ └── yyyy-mm-dd.md
├── ignored/
│ └── yyyy-mm-dd.md
├── mdbase/
│ ├── backlog.md
│ ├── README.ai.md
│ └── details/
│ ├── rules.md
│ ├── plans.md
│ ├── ui/
│ │ ├── outline.md
│ │ └── details.md
│ ├── dev-stack.md
│ └── general.md
└── export/
Required tools:
#ustht/.Optional tool:
sortin or resort maintenance that spans many files. Use the main agent directly only when subagents are unavailable.The scripts/ directory provides small Python helpers for mechanical operations:
| Script | Purpose | Example |
|---|---|---|
| common.py | Shared helpers | Imported by other scripts |
| status.py | Show current runtime state | python @/scripts/status.py |
| init.py | Initialize .ustht/ | python @/scripts/init.py |
| show_raw.py | Show unprocessed raw entries | python @/scripts/show_raw.py |
| show_mdbase.py | Show mdbase index or a dimension | python @/scripts/show_mdbase.py show --all |
| sortin.py | Soft-maintain raw entries into mdbase | python @/scripts/sortin.py --dry |
| write_raw.py | Append one raw thought | python @/scripts/write_raw.py "Use REST APIs" --dim dev-stack |
| toggle.py | Toggle skill or instant mode | python @/scripts/toggle.py instant on |
| ignore_ops.py | Manage ignored entries | python @/scripts/ignore_ops.py show |
resort has no standalone script because it requires semantic review, deduplication, and restructuring by an agent.
define.ini stores simple key/value runtime state:
| Key | Value | Meaning |
|---|---|---|
| SKILL_STATUS | on or off | Whether the skill accepts write operations |
| INSTANT_STATUS | on or off | Whether instant capture is enabled |
| LAST_SORTIN | yyyy-mm-dd HH:MM or empty | Last soft-maintenance time |
Write the file atomically by replacing its complete contents. Do not append partial key/value fragments.
Commands may use either /user-thoughts or /ustht.
/ustht init: create .ustht/ and copy templates./ustht status: show status, raw counts, and dimension counts./ustht skill: show skill status./ustht skill on|off: enable or disable writes./ustht instant: show instant-capture status./ustht instant on|off: enable or disable instant capture./ustht sortin [--dry]: append unprocessed raw entries into mdbase./ustht resort [--dry]: semantically review and reorganize all mdbase content./ustht ignore start|end: start or end an ignore interval./ustht ignore --last: remove the last raw entry and record it in #ignored/./ustht ignore: same as --last when used as a standalone command./ustht ignore show: list ignored entries./ustht ignore or /user-thoughts ignore: ignore that message./ustht raw: show unprocessed raw entries./ustht mdbase show [--all|--dimension]: show the index, all dimensions, or one dimension./ustht mdbase export [--all|--dimension]: export mdbase content to #export/./ustht import <path>: scan markdown files under a safe project-local path and merge project-relevant decisions into mdbase.Chain commands with &&, for example /ustht skill on && instant on.
When instant mode is active:
- [HH:MM] original text | suggested-dim:dimension.sortin./ustht sortin.sortin is soft maintenance:
#raw/*.md files.#mdbase/ files grouped by date.<!-- processed --> on the first line.LAST_SORTIN and the mdbase index.resort is hard maintenance:
general.md instead of inventing too many dimensions.resort..ustht/ can contain sensitive information. The skill does not redact content; users must use ignore commands or repository hygiene to manage sensitive data.#ustht/./ subdirectories only; no .., backslashes, spaces, absolute paths, or reserved names.<!-- processed --> as meaningful only when it is the first line of a raw file.More detail is available in references/safety.md, references/sortin.md, references/commands.md, and references/edge-cases.md.
None. This skill is intentionally focused on project-local user intent persistence.
tools
Authorized security assessment of LLM applications and AI agents: prompt injection, tool abuse, RAG exposure, memory poisoning, system-prompt extraction, and agent-compliance engineering per OWASP LLM/ASI Top 10.
development
Builds two parameterized UI modes—流光溢彩白 (iridescent white) and 五彩斑斓黑 (colorful black)—with OKLCH, WebGL/CSS fallback, vision gating, screenshot QA, and total/per-color intensity reports. Use when a UI request names either mode or needs measured color parameters.
tools
Delegate coding tasks to the Kimi Code CLI (`kimi`) only when the user explicitly requests it, while the orchestrator retains review and landing responsibility.
development
Front-end JavaScript reverse engineering: locate signature chains, analyze encrypted request parameters, sample runtime behavior, and reproduce logic locally in Node for evidence-based output.