name: pre-publish-checker description: ๐ Thoroughly checks files for profanity, internal links, sensitive paths, and professionalism before publication. Use when preparing a codebase or extension for public release. metadata: author: SRE Team version: 0.1.0 status: draft
Pre-Publish Checker
This skill guides you through a thorough audit of your project to ensure it meets publication standards. It combines automated script-based checks with a manual review workflow.
Policies
- Do Not Simply Remove TODOs: Do not delete
TODOmarkers just to make the check pass. Instead:- Action them: Resolve the task described.
- Move them: Transfer the
TODOto a tracking system (e.g., GitHub Issues) and replace the marker with a link to the issue.
- User Bypass: Any flagged issue can be bypassed if there is a valid reason. In
PUBLICATION_CHECKLIST.md, mark the status as[Pass]and include the keywordUSER_BYPASS: <explanation>.
Workflow
1. Initialization
- List all relevant files: Markdown (.md), code files (.py, .js, .go, etc.),
justfile, andREADMEs. - Create a
PUBLICATION_CHECKLIST.mdin the project root by copying the template fromreferences/checklist_template.md. - Populate the file list in the checklist.
2. Automated Audit
For each file in the checklist, run the automated check script:
uv run -s skills/pre-publish-checker/scripts/check_file.py <file_path>
Note: If uv is not available, use python3.
3. Iterative Review
- Process files one by one (or in small batches).
- Update the
PUBLICATION_CHECKLIST.mdwith the status and any issues found. - Fix issues as they are identified.
- For "long work", you can resume the process by reading the current state of
PUBLICATION_CHECKLIST.md. - Get a Synopsis: At any point, you can generate a quick summary of remaining work by running:
(Defaults to readinguv run -s skills/pre-publish-checker/scripts/summarize_checklist.pyPUBLICATION_CHECKLIST.md)
4. Final Verification
- Perform manual checks for "Google-bar professionalism" and overall quality.
- Ensure all boxes in
PUBLICATION_CHECKLIST.mdare checked.
Check Categories
- Profanity: Scans for common offensive language.
- Internal Links: Finds internal shortlinks (e.g.,
go/links) which are not accessible outside. - Internal Paths: Identifies local machine or company-specific paths that reveal internal infrastructure.
- Professionalism: Checks for development markers (e.g., "to-do", "fix-me") that should be resolved before release.