원클릭으로
contribute
Generalize a lesson and stage it for Memnyx contribution. Delegates sanitization to `sanitizer` before staging.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Generalize a lesson and stage it for Memnyx contribution. Delegates sanitization to `sanitizer` before staging.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Definitive reference for how Claude Code works — disambiguates skills vs hooks vs subagents vs MCPs vs slash commands vs memory vs settings. Use when asked "how does Claude Code X work", "what's the difference between X and Y", "where should this live", "build me a [skill|hook|agent|mcp|slash command]", "configure Claude Code", or when picking the right surface for a new capability.
Scribe — the project-documentation skill. Generate or maintain a project's Claude-facing documentation (CLAUDE.md, .claude/docs/*, project-context.md, README) from verified facts. Use when the user says "document this project", "write the docs for X", "the docs are stale", "fill in the .claude docs", or "/scribe". Detects existing doc state and routes between from-scratch and update. Verify-before-assert is the core discipline — confirmed facts go to committed docs, inferred/uncertain ones go to a separate hazards artifact, never silently into the repo.
Speak content aloud via Kokoro neural TTS (local, offline). Use when the user says "read it for me", "read it to me", "play it in audio", "say it", "speak it", "read that aloud", "/say-it", or asks to hear something spoken instead of reading it.
Install a local neural voice interface for Claude Code on macOS Apple Silicon. Wires mlx-whisper (STT) + Kokoro TTS (offline neural voices) into voice-claude and vtranscribe CLI scripts. Two voice contexts — personal (af_heart) and tech (af_bella). Multi-session safe — concurrent sessions speak in turn (global lock) and announce their name. No cloud APIs, no API keys.
Collect the user's daily work activity from Slack, Jira, Confluence, GitHub, and Google Drive with source links
Collect a team member's daily work activity from Slack, Jira, Confluence, and GitHub
| name | contribute |
| description | Generalize a lesson and stage it for Memnyx contribution. Delegates sanitization to `sanitizer` before staging. |
| user_invocable | true |
| args | Optional description of the lesson or improvement to generalize |
See .claude/skills/_shared/MODEL_SELECTION.md (in your workspace) for full policy.
You are preparing a generalized contribution that can be pulled into Memnyx. The contribution must be project-agnostic — no project names, file paths, domain terms, API keys, or internal details.
Setup — Resolve <workspace> and scope: The skill's base directory is <workspace>/.claude/skills/contribute/; walk up three directory levels and validate that <workspace>/.claude/.workspace exists. Abort with a setup-broken error if validation fails. Then read the active session marker from <workspace>/sessions/active/*.md and <workspace>/projects/*/sessions/active/*.md to determine scope: if project_slug is workspace, scope is <workspace>; otherwise scope is <workspace>/projects/<project_slug>. If no marker exists, ask the user whether to read from workspace or a specific project before proceeding.
Gather input: If a lesson or improvement was passed as argument, use it. Otherwise, read <scope>/.claude/memory/lessons-learned.md and ask the user which lessons they'd like to contribute back.
Classify the contribution into one of these types:
skill-update — improvement to an existing skill's instructionsnew-skill — a new skill that would benefit all projectsconvention — a general coding or workflow conventionmemory-template — improvement to memory file structure or initial contentdocs — improvement to documentation in .claude/docs/config — improvement to .mcp.json, settings.json, or CLAUDE.mdGeneralize: Rewrite the lesson to remove all project-specific details:
[project] or generic termssrc/auth/login.ts → "authentication modules")Sanitize (MANDATORY): Write the draft to a temp path and invoke sanitizer on it:
/sanitizer <temp-draft-path> --mode=boilerplate
If sanitizer returns any findings (SECRET, PII, PRIVATE_CONTEXT, or TONE), do not proceed. Surface the full report to the user and apply recommended fixes before continuing. The sanitizer is the dedicated scrubber — do not duplicate its logic here.
Write the contribution: Create a new file in <workspace>/contributions/ with this format:
Filename: YYYY-MM-DD-<short-slug>.md (e.g., 2025-06-15-improve-hello-mcp-retry.md)
Content:
# Contribution: <title>
**Type**: skill-update | new-skill | convention | memory-template | docs | config
**Target**: <which file(s) in Memnyx this would affect>
**Date**: YYYY-MM-DD
## Problem
<What problem or gap was discovered>
## Recommendation
<The generalized improvement, with specific text/changes to apply>
## Rationale
<Why this improves Memnyx, based on real project experience>
Review with user: Show the contribution along with the sanitizer report and ask:
Save: Write the file to <workspace>/contributions/.
Report:
Contribution staged
===================
File: <workspace>/contributions/<filename>.md
Type: <type>
Target: <target files>
To integrate into Memnyx, run /pull-contributions from the Memnyx repo
and point it at <workspace>/contributions/.