Skip to content

docs: publish Skippy native API reference - #1217

Merged
i386 merged 32 commits into
jd/fix-issue-986-reasoning-effort-on-1194from
agent/skippy-native-api-docs
Aug 10, 2026
Merged

docs: publish Skippy native API reference#1217
i386 merged 32 commits into
jd/fix-issue-986-reasoning-effort-on-1194from
agent/skippy-native-api-docs

Conversation

@i386

@i386 i386 commented Aug 9, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Document the complete Skippy native C API from the patched headers, covering 13 public headers and 73 exported functions.
  • Add a generated website API reference with header/function quick navigation and stable anchors.
  • Add Doxygen and agent guidance so native Skippy API changes regenerate the website documentation.
image

Context

This PR is stacked on #1211 and targets jd/fix-issue-986-reasoning-effort-on-1194.

Validation

  • python3 scripts/generate-skippy-api-doc.py --check
  • just website-build
  • All 13 public headers compile as C11 and C++17 with -Wall -Wextra -Werror.
  • The complete llama.cpp patch queue, including the new documentation patch, applies cleanly.
  • Generated-page fragment validation found no missing anchors.

Summary by CodeRabbit

  • New Features

    • Added a comprehensive Skippy native API reference covering the versioned C ABI, 13 headers, and 73 exported functions.
    • Added developer documentation navigation and responsive quick-navigation for the API reference.
    • Added detailed documentation for native headers, data structures, callbacks, runtime capabilities, and operations.
  • Documentation

    • Added automated API documentation generation and validation.
    • Added guidance requiring documentation for public native APIs and keeping generated references up to date.

@coderabbitai

coderabbitai Bot commented Aug 9, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: dbd00ccd-0e25-479d-b72e-768952d74e8b

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

The PR documents the Skippy native C ABI, adds a generator for validated API reference Markdown, and publishes a generated website page covering 73 exported functions across 13 headers.

Changes

Skippy Native API Documentation

Layer / File(s) Summary
Annotate native headers
.agents/skills/..., AGENTS.md, third_party/llama.cpp/patches/*
Adds Doxygen requirements and documentation for public Skippy headers, structures, callbacks, and exported functions.
Generate API reference
scripts/generate-skippy-api-doc.py
Adds header parsing, declaration formatting, brief validation, Markdown rendering, and --check output validation.
Publish API reference
website/src/docs/pages/skippy-api.md, website/src/_data/docs.js, website/src/assets/site.css
Adds the generated API reference, Developers navigation link, grouped function index, and responsive styling.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Possibly related PRs

Suggested labels: experimental

Suggested reviewers: ndizazzo, michaelneale

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely describes the main change: publishing the Skippy native API reference.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch agent/skippy-native-api-docs

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

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.

Actionable comments posted: 3

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@scripts/generate-skippy-api-doc.py`:
- Around line 105-107: Update the macro-processing loop using match.group(1) to
skip header-guard macros such as SKIPPY_H and SKIPPY_*_H before appending to
declarations, while preserving all other SKIPPY_ macro declarations.
- Line 216: Remove the unnecessary f-string prefix from the static backlink
string in the function-index backlink generation. Update the list concatenation
at the RUF005 location to use Ruff-preferred iterable unpacking or an equivalent
non-concatenating construction, preserving the existing output order and
contents.
- Around line 85-99: Update the documentation parsing around file_comment and
the function loop: extract the page header brief from file_comment instead of
HEADER_BRIEFS[path.name], and reject a missing header brief. For each
declaration matched by function_pattern, only use the Doxygen comment whose
closing delimiter is immediately before the LLAMA_API declaration; do not search
all preceding comments, and raise the existing missing-brief error when no
adjacent function brief is present.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 6e609ce1-6277-44e1-9253-e8f9240b9821

📥 Commits

Reviewing files that changed from the base of the PR and between b498e45 and f37fa82.

📒 Files selected for processing (7)
  • .agents/skills/llama-stage-patch-changes/SKILL.md
  • AGENTS.md
  • scripts/generate-skippy-api-doc.py
  • third_party/llama.cpp/patches/0015-docs-annotate-Skippy-native-API-headers.patch
  • website/src/_data/docs.js
  • website/src/assets/site.css
  • website/src/docs/pages/skippy-api.md

Comment thread scripts/generate-skippy-api-doc.py
Comment thread scripts/generate-skippy-api-doc.py
Comment thread scripts/generate-skippy-api-doc.py Outdated
@i386
i386 force-pushed the jd/fix-issue-986-reasoning-effort-on-1194 branch from b498e45 to 38ac03a Compare August 10, 2026 00:07
…on-1194' into agent/skippy-native-api-docs

# Conflicts:
#	.agents/skills/llama-stage-patch-changes/SKILL.md
#	AGENTS.md
@@ -0,0 +1,261 @@
#!/usr/bin/env python3

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

ew

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

haha

@ndizazzo ndizazzo added this to the 0.76.0 milestone Aug 10, 2026
@i386
i386 force-pushed the jd/fix-issue-986-reasoning-effort-on-1194 branch from 38ac03a to 91360b2 Compare August 10, 2026 04:55
…on-1194' into HEAD

# Conflicts:
#	.agents/skills/llama-stage-patch-changes/SKILL.md
#	AGENTS.md
@i386
i386 merged commit 22fbab9 into jd/fix-issue-986-reasoning-effort-on-1194 Aug 10, 2026
42 checks passed
@i386
i386 deleted the agent/skippy-native-api-docs branch August 10, 2026 08:32
i386 added a commit that referenced this pull request Aug 10, 2026
* Split Skippy by functional boundary

* Rebuild llama patch queue by functional boundary

* Add explicit standard library includes to Skippy modules

* Add explicit tokenization limit dependency

* Address Skippy queue review findings

* Advertise Skippy chat feature support

* Fix split GGUF stage inventory discovery (#1199)

* feat: pass reasoning effort through Skippy templates

* feat: advertise reasoning efforts in model listings

* docs: require Skippy ABI inventories in PRs

* docs: clarify Skippy ABI lockstep policy

* refactor: remove legacy Skippy chat ABI

* fix: stop advertising reasoning effort values

* fix: preserve Skippy no-thinking override

* docs: publish Skippy native API reference

* fix: address Skippy API doc review comments

* Split Skippy by functional boundary

* Rebuild llama patch queue by functional boundary

* Add explicit standard library includes to Skippy modules

* Add explicit tokenization limit dependency

* Address Skippy queue review findings

* Advertise Skippy chat feature support

* Fix split GGUF stage inventory discovery (#1199)

* feat: pass reasoning effort through Skippy templates

* feat: advertise reasoning efforts in model listings

* docs: require Skippy ABI inventories in PRs

* docs: clarify Skippy ABI lockstep policy

* refactor: remove legacy Skippy chat ABI

* fix: stop advertising reasoning effort values

* fix: preserve Skippy no-thinking override
i386 added a commit that referenced this pull request Aug 10, 2026
* feat: pass reasoning effort through Skippy templates

* feat: advertise reasoning efforts in model listings

* docs: require Skippy ABI inventories in PRs

* docs: clarify Skippy ABI lockstep policy

* refactor: remove legacy Skippy chat ABI

* fix: stop advertising reasoning effort values

* fix: preserve Skippy no-thinking override

* docs: publish Skippy native API reference (#1217)

* Split Skippy by functional boundary

* Rebuild llama patch queue by functional boundary

* Add explicit standard library includes to Skippy modules

* Add explicit tokenization limit dependency

* Address Skippy queue review findings

* Advertise Skippy chat feature support

* Fix split GGUF stage inventory discovery (#1199)

* feat: pass reasoning effort through Skippy templates

* feat: advertise reasoning efforts in model listings

* docs: require Skippy ABI inventories in PRs

* docs: clarify Skippy ABI lockstep policy

* refactor: remove legacy Skippy chat ABI

* fix: stop advertising reasoning effort values

* fix: preserve Skippy no-thinking override

* docs: publish Skippy native API reference

* fix: address Skippy API doc review comments

* Split Skippy by functional boundary

* Rebuild llama patch queue by functional boundary

* Add explicit standard library includes to Skippy modules

* Add explicit tokenization limit dependency

* Address Skippy queue review findings

* Advertise Skippy chat feature support

* Fix split GGUF stage inventory discovery (#1199)

* feat: pass reasoning effort through Skippy templates

* feat: advertise reasoning efforts in model listings

* docs: require Skippy ABI inventories in PRs

* docs: clarify Skippy ABI lockstep policy

* refactor: remove legacy Skippy chat ABI

* fix: stop advertising reasoning effort values

* fix: preserve Skippy no-thinking override
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants