Skip to content

docs: add integrations directory with framework tracker#499

Merged
jdx merged 2 commits intomainfrom
docs/integrations-page
Feb 16, 2026
Merged

docs: add integrations directory with framework tracker#499
jdx merged 2 commits intomainfrom
docs/integrations-page

Conversation

@jdx
Copy link
Copy Markdown
Owner

@jdx jdx commented Feb 15, 2026

Summary

  • Split integrations docs into index page (/spec/integrations) and per-framework subpages (/spec/integrations/cobra, /spec/integrations/clap)
  • Add framework tracker tables (planned integrations by priority) to the index page
  • Add collapsed Integrations section to sidebar with Cobra and clap child items

Test plan

  • Verify docs build locally with npm run docs:dev
  • Check sidebar shows collapsed Integrations section
  • Verify links between index and subpages work

🤖 Generated with Claude Code

Copilot AI review requested due to automatic review settings February 15, 2026 14:39
@gemini-code-assist
Copy link
Copy Markdown
Contributor

Summary of Changes

Hello @jdx, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request significantly enhances the integrations documentation by providing comprehensive guides for integrating CLI frameworks like Cobra and clap. It aims to streamline the process for users to generate usage specifications, enabling features such as shell completions, markdown documentation, and man pages directly from their existing CLI definitions. The update also outlines future integration targets to encourage community contributions.

Highlights

  • Documentation Expansion: Expanded the integrations.md documentation page with more detailed content.
  • Cobra Integration Guide: Added comprehensive installation and quick-start examples for integrating with Cobra (Go) CLIs, including the recommended --usage-spec pattern.
  • Clap Integration Guide: Updated and expanded the quick-start examples for integrating with clap (Rust) CLIs.
  • Community Integrations: Included a new section listing high-priority community integration targets with links to the full tracker.
Changelog
  • docs/spec/integrations.md
    • Expanded documentation for CLI integrations.
    • Added Cobra (Go) installation and quick-start guide.
    • Updated clap (Rust) installation and quick-start guide.
    • Included a list of high-priority community integration targets.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@codecov
Copy link
Copy Markdown

codecov Bot commented Feb 15, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 77.81%. Comparing base (fbc0a3b) to head (702d869).
⚠️ Report is 3 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #499   +/-   ##
=======================================
  Coverage   77.81%   77.81%           
=======================================
  Files          47       47           
  Lines        6595     6595           
  Branches     6595     6595           
=======================================
  Hits         5132     5132           
  Misses       1105     1105           
  Partials      358      358           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

The additions to the integrations page are very helpful for users getting started with Cobra and clap. The examples are clear and follow the recommended patterns. I've suggested a few minor updates to the code snippets to ensure they are complete and use the most idiomatic approaches for each language, such as including missing imports and simplifying the Rust output logic.

Comment thread docs/spec/integrations.md Outdated
Comment on lines +18 to +21
import cobra_usage "github.com/jdx/usage/integrations/cobra"

// Print usage spec as KDL
fmt.Print(cobra_usage.Generate(rootCmd))
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The Go snippet uses fmt.Print but the fmt package is not imported. Updating the import section to a block including fmt makes the example more complete and easier to use for a quick start.

Suggested change
import cobra_usage "github.com/jdx/usage/integrations/cobra"
// Print usage spec as KDL
fmt.Print(cobra_usage.Generate(rootCmd))
import (
"fmt"
cobra_usage "github.com/jdx/usage/integrations/cobra"
)
// Print usage spec as KDL
fmt.Print(cobra_usage.Generate(rootCmd))

Comment thread docs/spec/integrations.md Outdated
Comment on lines +60 to +68
use clap::Command;

let mut cmd = Command::new("mycli")
.version("1.0")
.arg(clap::Arg::new("input"));

let mut buf = Vec::new();
clap_usage::generate(&mut cmd, "mycli", &mut buf);
println!("{}", String::from_utf8(buf).unwrap());
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

This snippet can be simplified by writing directly to stdout and handling the Result returned by clap_usage::generate. Additionally, importing Arg alongside Command makes the code cleaner and more idiomatic.

Suggested change
use clap::Command;
let mut cmd = Command::new("mycli")
.version("1.0")
.arg(clap::Arg::new("input"));
let mut buf = Vec::new();
clap_usage::generate(&mut cmd, "mycli", &mut buf);
println!("{}", String::from_utf8(buf).unwrap());
use clap::{Arg, Command};
let mut cmd = Command::new("mycli")
.version("1.0")
.arg(Arg::new("input"));
clap_usage::generate(&mut cmd, "mycli", &mut std::io::stdout()).unwrap();

- Move Cobra and clap docs into separate pages under /spec/integrations/
- Add framework tracker tables (planned integrations) to index page
- Update sidebar with collapsed Integrations section

Co-Authored-By: Claude Opus 4.6 <[email protected]>
@jdx jdx changed the title docs: expand integrations page with Cobra and clap quick starts docs: add integrations directory with framework tracker Feb 15, 2026
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR expands the minimal integrations documentation page with comprehensive installation and quick-start guides for both Cobra (Go) and clap (Rust) integrations. It demonstrates the recommended --usage-spec integration pattern for Cobra and provides practical examples for generating shell completions, markdown docs, and man pages. The PR also lists high-priority community integration targets.

Changes:

  • Added complete quick-start documentation for Cobra integration with installation, code examples, and the recommended --usage-spec pattern
  • Added quick-start documentation for clap integration with installation and code examples
  • Added a Community Integrations section listing high-priority framework targets across multiple languages

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread docs/spec/integrations.md
Comment on lines +39 to +41
| [Laravel Zero](https://github.com/laravel-zero/laravel-zero) | PHP |
| [swift-argument-parser](https://github.com/apple/swift-argument-parser) | Swift |
| [System.CommandLine](https://github.com/dotnet/command-line-api) | C#/.NET |
Copy link

Copilot AI Feb 15, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The example commands for generating completions, markdown, and manpage documentation are incorrect. These commands do not support reading spec content from stdin via pipe.

The correct patterns are:

For completions, use --usage-cmd:

usage generate completion bash mycli --usage-cmd "mycli --usage-spec"

For markdown and manpage, save the spec to a file first:

mycli --usage-spec > /tmp/spec.kdl
usage generate md --file /tmp/spec.kdl --out-file docs.md
usage generate manpage --file /tmp/spec.kdl --out-file mycli.1

Alternatively, consider adding support for reading from stdin (e.g., via -f - pattern) to match the examples shown in the cobra integration README.

Copilot uses AI. Check for mistakes.
@jdx jdx merged commit dc31060 into main Feb 16, 2026
10 checks passed
@jdx jdx deleted the docs/integrations-page branch February 16, 2026 22:43
jdx pushed a commit that referenced this pull request Feb 16, 2026
### 🚀 Features

- add Cobra (Go) integration for generating usage specs by
[@jdx](https://github.com/jdx) in
[#498](#498)
- Add support for nushell by [@abusch](https://github.com/abusch) in
[#485](#485)

### 🐛 Bug Fixes

- **(docs)** align homepage feature button with integrations page by
[@jdx](https://github.com/jdx) in
[#496](#496)

### 📚 Documentation

- add integrations directory with framework tracker by
[@jdx](https://github.com/jdx) in
[#497](#497)
- add integrations directory with framework tracker by
[@jdx](https://github.com/jdx) in
[#499](#499)

### 🔍 Other Changes

- mise up by [@muzimuzhi](https://github.com/muzimuzhi) in
[#492](#492)

### 📦️ Dependency Updates

- update actions/checkout digest to de0fac2 by
[@renovate[bot]](https://github.com/renovate[bot]) in
[#494](#494)
- update taiki-e/upload-rust-binary-action digest to f391289 by
[@renovate[bot]](https://github.com/renovate[bot]) in
[#495](#495)
- lock file maintenance by
[@renovate[bot]](https://github.com/renovate[bot]) in
[#500](#500)

### New Contributors

- @abusch made their first contribution in
[#485](#485)
tmeijn pushed a commit to tmeijn/dotfiles that referenced this pull request Feb 17, 2026
This MR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [usage](https://github.com/jdx/usage) | minor | `2.16.2` → `2.17.0` |

MR created with the help of [el-capitano/tools/renovate-bot](https://gitlab.com/el-capitano/tools/renovate-bot).

**Proposed changes to behavior should be submitted there as MRs.**

---

### Release Notes

<details>
<summary>jdx/usage (usage)</summary>

### [`v2.17.0`](https://github.com/jdx/usage/blob/HEAD/CHANGELOG.md#2170---2026-02-16)

[Compare Source](jdx/usage@v2.16.2...v2.17.0)

##### 🚀 Features

- add Cobra (Go) integration for generating usage specs by [@&#8203;jdx](https://github.com/jdx) in [#&#8203;498](jdx/usage#498)
- Add support for nushell by [@&#8203;abusch](https://github.com/abusch) in [#&#8203;485](jdx/usage#485)

##### 🐛 Bug Fixes

- **(docs)** align homepage feature button with integrations page by [@&#8203;jdx](https://github.com/jdx) in [#&#8203;496](jdx/usage#496)

##### 📚 Documentation

- add integrations directory with framework tracker by [@&#8203;jdx](https://github.com/jdx) in [#&#8203;497](jdx/usage#497)
- add integrations directory with framework tracker by [@&#8203;jdx](https://github.com/jdx) in [#&#8203;499](jdx/usage#499)

##### 🔍 Other Changes

- mise up by [@&#8203;muzimuzhi](https://github.com/muzimuzhi) in [#&#8203;492](jdx/usage#492)

##### 📦️ Dependency Updates

- update actions/checkout digest to [`de0fac2`](jdx/usage@de0fac2) by [@&#8203;renovate\[bot\]](https://github.com/renovate\[bot]) in [#&#8203;494](jdx/usage#494)
- update taiki-e/upload-rust-binary-action digest to [`f391289`](jdx/usage@f391289) by [@&#8203;renovate\[bot\]](https://github.com/renovate\[bot]) in [#&#8203;495](jdx/usage#495)
- lock file maintenance by [@&#8203;renovate\[bot\]](https://github.com/renovate\[bot]) in [#&#8203;500](jdx/usage#500)

##### New Contributors

- [@&#8203;abusch](https://github.com/abusch) made their first contribution in [#&#8203;485](jdx/usage#485)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this MR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box

---

This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xNS4yIiwidXBkYXRlZEluVmVyIjoiNDMuMTUuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiUmVub3ZhdGUgQm90IiwiYXV0b21hdGlvbjpib3QtYXV0aG9yZWQiLCJkZXBlbmRlbmN5LXR5cGU6Om1pbm9yIl19-->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants