qv-dev-diary-setup
Skill697 starsChanged 18 days agoApache-2.0View on GitHub
Set up the opt-in local dev diary for any developer. Use when the user asks to enable diary logging, initialize diary capture, run diary --init, or configure local daily work updates.
- Reads credentials
We split this skill into the rules it gives an agent
14 rules. About 0 are common, 7 are distinctive, and 7 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈7
Distinctive · estimate
This author's own choices. Worth a look.
7
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 11
Use this skill only for setup/enable/disable.
- Very specific: line 15
When using --asana or an Asana config file, first show these instructions to the user before checking whether ASANA_ACCESS_TOKEN exists:
- Distinctive: line 18
Create a Personal Access Token.
- Distinctive: line 21
No OAuth app and no Asana MCP server are needed.
- Very specific: line 68
Do not run a raw shell check like test -n "$ASANA_ACCESS_TOKEN" or echo "$ASANA_ACCESS_TOKEN".
- Very specific: line 69
Run the init command directly and let diary-cli.mjs resolve the token from process.env or the user's default shell startup files:
- Distinctive: line 75
If the helper reports a missing token, stop after showing its output.
- Distinctive: line 76
If init succeeds, confirm diary status:
- Distinctive: line 84
Do not enable diary capture unless init succeeds.
- Distinctive: line 85
Do not ask for Slack channel during init.
- Distinctive: line 86
Do not write tokens, Asana IDs, or diary entries into repo files.
- Very specific: line 87
If Asana is requested, walk the user through creating ASANA_ACCESS_TOKEN and verify /users/me.
- Very specific: line 88
If an Asana config path is provided, it must contain only shared workspace/project/section/custom-field metadata.
- Very specific: line 89
Never preflight token presence with raw shell env checks.
≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Dev Diary Setup
Sets up local diary capture. The diary is off by default and only turns on after initialization succeeds.
Use this skill only for setup/enable/disable. For reading, editing, or adding diary entries after setup, use qv-dev-diary.
Asana Token Setup
When using --asana or an Asana config file, first show these instructions to the user before checking whether ASANA_ACCESS_TOKEN exists:
- Open Asana developer console.
- Create a Personal Access Token.
- Description suggestion:
Local qvac-pr-skills. - Permission model: Asana Personal Access Tokens do not require choosing scopes in this setup. The token acts as the current Asana user and can access whatever that user can access. For this workflow, that user must be able to read the workspace/project/tasks; for sync actions, the user must also be allowed to comment, move, and complete tasks in that project.
- No OAuth app and no Asana MCP server are needed.
- Store it in your default shell startup file or export it in the current shell. Coding agents may not inherit the app environment, so the helper falls back to asking your default shell for this variable.
export ASANA_ACCESS_TOKEN='<token>'- Verify manually:
curl https://app.asana.com/api/1.0/users/me \
-H "Authorization: Bearer $ASANA_ACCESS_TOKEN"Docs: Asana personal access token
Commands
Basic local diary only:
node .agents/skills/_lib/developer-workflow/diary-cli.mjs --init --basicLocal diary plus Asana config import:
node .agents/skills/_lib/developer-workflow/diary-cli.mjs --init /path/to/asanaconfig.jsonStatus:
node .agents/skills/_lib/developer-workflow/diary-cli.mjs --statusDisable:
node .agents/skills/_lib/developer-workflow/diary-cli.mjs --offWorkflow
For Asana-backed setup:
- Present the Asana Token Setup section above.
- Do not run a raw shell check like
test -n "$ASANA_ACCESS_TOKEN"orecho "$ASANA_ACCESS_TOKEN". That only checks the agent process environment and bypasses the helper's default-shell fallback. - Run the init command directly and let
diary-cli.mjsresolve the token fromprocess.envor the user's default shell startup files:
node .agents/skills/_lib/developer-workflow/diary-cli.mjs --init /path/to/asanaconfig.json- If the helper reports a missing token, stop after showing its output. Do not replace it with a shorter "export token" message.
- If init succeeds, confirm diary status:
node .agents/skills/_lib/developer-workflow/diary-cli.mjs --statusRules
- Do not enable diary capture unless init succeeds.
- Do not ask for Slack channel during init.
- Do not write tokens, Asana IDs, or diary entries into repo files.
- If Asana is requested, walk the user through creating
ASANA_ACCESS_TOKENand verify/users/me. - If an Asana config path is provided, it must contain only shared workspace/project/section/custom-field metadata.
- Never preflight token presence with raw shell env checks; always use
diary-cli.mjs/asana.mjsso default-shell fallback is applied.
In this repository56 other files it gives its agents.
- AGENTS.mdAGENTS.md
- .github/AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- .cursor/rules/agent-integrations.mdcCursor rule
- .cursor/rules/cpp/string-api-conventions.mdcCursor rule
- .cursor/rules/devops/main.mdcCursor rule
- .cursor/rules/no-remote-code-execution.mdcCursor rule
- .cursor/rules/qip-triage.mdcCursor rule
- .cursor/rules/sdk/commit-and-pr-format.mdcCursor rule
- .cursor/rules/sdk/error-handling.mdcCursor rule
- .cursor/rules/sdk/first-class-product-parity.mdcCursor rule
- .cursor/rules/sdk/main.mdcCursor rule
- .cursor/rules/sdk/public-constants-contract.mdcCursor rule
- .cursor/rules/sdk/request-lifecycle-primitives.mdcCursor rule
- .cursor/rules/sdk/sdk-pod-packages.mdcCursor rule
- .cursor/rules/sdk/skill-authoring-guidelines.mdcCursor rule
- cpp-string-api-reviewSkill
- qv-addon-changelogSkill
- qv-addon-pr-createSkill
- qv-addon-release-notesSkill
- qv-agent-stack-syncSkill
- qv-asana-syncSkill
- qv-daily-work-updateSkill
- qv-dev-diarySkill
- qv-devops-daily-updateSkill
- qv-devops-pr-createSkill
- qv-devops-pr-reviewSkill
- qv-devops-pr-statusSkill
- qv-devops-runner-queueSkill
- qv-devops-why-my-pr-notSkill
- qv-docs-solution-createSkill
- qv-docs-updateSkill
- qv-holepunch-devSkill
- qv-merge-guard-wireSkill
- qv-mobile-test-dispatchSkill
- qv-notice-generateSkill
- qv-pr-mineSkill
- qv-pr-reviewSkill
- qv-pr-testSkill
- qv-qip-createSkill
- qv-qip-reviewSkill
- qv-qip-triageSkill
- qv-quality-reportingSkill
- qv-registry-autobase-patternsSkill
- qv-release-trainSkill
- qv-sdk-backmergeSkill
- qv-sdk-changelogSkill
- qv-sdk-e2e-createSkill
- qv-sdk-inference-versionSkill
- qv-sdk-pr-createSkill
- qv-sdk-pr-statusSkill
- qv-sdk-update-modelsSkill
- qv-skill-listSkill
- setupSkill
- setupSkill
- qv-nx-ciSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

