Documentation guide for QtPass - README, FAQ, localization
51
57%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Fix and improve this skill with Tessl
tessl review fix ./.opencode/skills/qtpass-docs/SKILL.md| File | Purpose |
|---|---|
| README.md | Main documentation, installation, usage |
| FAQ.md | Frequently asked questions, troubleshooting |
| CHANGELOG.md | Release history, changes |
| CONTRIBUTING.md | Developer contribution guidelines |
| CODE_OF_CONDUCT.md | Community code of conduct |
| Doxyfile | API documentation configuration |
| Windows.md | Windows-specific installation and build |
## Question Title
**Problem:** Description of the issue
**Solution:** Step-by-step solution
**Related:** Links to relevant issuesSee qtpass-localization skill for comprehensive guide.
# Generate API docs
doxygen Doxyfile
# Or use project-specific docs command
# View
open docs/index.htmlTHIS IS THE PATTERN - always run before pushing:
# Check formatting (this is the pattern)
npx prettier --check "**/*.md"
# Format all markdown files
npx prettier --write "**/*.md"
# Format specific file
npx prettier --write README.mdnpx prettier --write <markdown-file>
npx prettier --write "**/*/SKILL.md"npx prettier --write <yaml-file>
npx prettier --write .github/workflows/*.ymlFAQ.mdnpx prettier --write FAQ.mdWhen releasing a new version, update download links:
# Find version strings in README
grep -n "1\.5\|download" README.mdUpdate:
# Generate with doxygen
doxygen Doxyfile
# Output goes to docs/
ls docs/index.htmlCI pins Doxygen 1.17.0 and treats warnings as errors; a local Doxygen of a
different version may report differently. The docs.yml install step fetches
the pinned binary from the GitHub release mirror first, then doxygen.nl, with
retries (doxygen.nl outages previously caused spurious docs failures).
Always format Markdown with prettier before committing:
# Wrong - may fail CI
git commit -m "Update FAQ"
# Correct
npx prettier --write FAQ.md
git commit -m "Update FAQ"When adding links to issues or PRs:
# Use full GitHub URLs (they redirect correctly)
[Issue #123](https://github.com/IJHack/QtPass/issues/123)
# Not relative paths
[Issue #123](issues/123) # BrokenQtPass changes frequently. When updating installation instructions:
Keep CHANGELOG entries consistent:
## [1.5.1] - 2026-03-30
### Fixed
- Issue #123: Description of fix
### Added
- New feature descriptionWhen adding new public APIs, every public symbol in a header needs a Doxygen doc block:
/**
* @brief Brief description.
* @param param1 Description of first parameter.
* @return Description of return value.
*/The CI enforces zero Doxygen warnings via docs.yml. WARN_AS_ERROR = FAIL_ON_WARNINGS in Doxyfile causes the step to fail on any undocumented public symbol.
| Setting | Value | Purpose |
|---|---|---|
FILE_PATTERNS | *.cpp *.h *.md | Includes cpp, header, and Markdown files |
EXTRACT_ALL | NO | Required for WARN_NO_PARAMDOC to work |
WARN_NO_PARAMDOC | YES | Requires @param/@return on all public symbols |
WARN_AS_ERROR | FAIL_ON_WARNINGS | Fails CI on any warning |
doxygen Doxyfile
# Any output = warning = CI will fail/** */ blocks not immediately above their declaration@return on non-void functions (required with WARN_NO_PARAMDOC = YES)@unknowncommand typos in doc blocks04899e4
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.