agentleFS
drinkspillerdrinkspiller/skills/github_repo_research/SKILL.md

github_repo_research

Skill1 starsChanged 6 days agoUnlicenseView on GitHub

Robust strategy for researching a public repository — discovering documentation, configuration schemas, and API surfaces. Use when investigating an unfamiliar library, tool, or framework hosted on GitHub (or similar forges).

The file

We split this skill into the rules it gives an agent

8 rules. About 0 are common, 7 are distinctive, and 1 is very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈7

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    If main 404s, try master.

    line 24
  2. Distinctive:

    If the README doesn't answer your question, map the repo structure:

    line 36
  3. Distinctive:

    Look for these filenames in priority order:

    line 60
  4. Distinctive:

    When fetching doc site pages, target specific paths rather than the root:

    line 81
  5. Distinctive:

    When documentation is absent, incomplete, or truncated, the source code is the canonical schema reference.

    line 92
  6. Distinctive:

    If the file tree is large, search for the specific field or section name:

    line 129
  7. Distinctive:

    Test files often contain the most complete examples of valid configuration:

    line 140
  8. Very specific:

    Look for fixture files (.toml, .json, .yaml) in test directories — they exercise edge cases the docs may not cover.

    line 152

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Repository Research Strategy

A systematic approach to understanding a repository you haven't worked with before. The goal is to find authoritative documentation with minimal wasted context.

Phase 1: Fetch the README

The README is the entry point. Always start here.

https://raw.githubusercontent.com/{owner}/{repo}/main/README.md

Critical: Use raw.githubusercontent.com, never github.com. The latter returns ~50KB+ of HTML navigation, JS bundles, and React partials that consume context for zero information.

If main 404s, try master.

Scan the README for:

  • Links to a documentation site (e.g., docs.example.com, GitHub Pages)
  • Pointers to a /docs or /website directory
  • Inline configuration examples or schema descriptions
  • Links to a wiki (github.com/{owner}/{repo}/wiki)
  • Badge links (often reveal CI, coverage, and package registry URLs)

Phase 2: Discover the File Tree

If the README doesn't answer your question, map the repo structure:

https://api.github.com/repos/{owner}/{repo}/git/trees/main?recursive=1

This returns every file path in the repo. Grep the response for terms related to your question (e.g., config, mcp, schema, docs, reference).

Documentation Directory Patterns

Repos typically store docs in one of these locations:

PatternCommon In
docs/Most projects
website/docs/Docusaurus, Astro Starlight
site/MkDocs, Hugo
doc/Ruby, Elixir
pages/Jekyll
.github/wiki/GitHub wikis (rare in tree)

Documentation File Patterns

Look for these filenames in priority order:

  1. README.md — top-level and per-directory
  2. CONFIGURATION.md, CONFIG.md — dedicated config docs
  3. *.mdx, *.md in any docs directory
  4. CHANGELOG.md — useful for understanding recent schema changes
  5. CONTRIBUTING.md — often documents project structure
  6. examples/ — working configs and usage patterns
  7. schema.json, *.schema.ts — machine-readable schemas

Phase 3: Check for a Documentation Site

Many projects host docs separately. Common hosting patterns:

URL PatternPlatform
{owner}.github.io/{repo}/GitHub Pages
docs.{project}.devCustom domain
{repo}.readthedocs.ioRead the Docs
wiki.{repo}.ioWiki-style

When fetching doc site pages, target specific paths rather than the root:

https://{owner}.github.io/{repo}/configuration/
https://{owner}.github.io/{repo}/reference/
https://{owner}.github.io/{repo}/guides/
https://{owner}.github.io/{repo}/api/

Phase 4: Read Source for Schema Truth

When documentation is absent, incomplete, or truncated, the source code is the canonical schema reference. The type definitions tell you exactly what fields are supported.

By Language

Rust — look for #[derive(Deserialize)] structs:

src/config.rs
crates/{name}-core/src/config.rs
src/config/*.rs

TypeScript/JavaScript — look for interface or type exports:

src/types.ts
src/config.ts
src/schema.ts
lib/types.d.ts

Go — look for structs with JSON/TOML/YAML tags:

pkg/config/config.go
internal/config/types.go
cmd/*/config.go

Python — look for dataclasses, Pydantic models, or TypedDicts:

src/{name}/config.py
{name}/models.py
{name}/schema.py

Discovery via Grep

If the file tree is large, search for the specific field or section name:

https://github.com/{owner}/{repo}/search?q={term}&type=code

Note: unauthenticated API code search may return 401. The web UI works but returns HTML. Prefer scanning the API tree + targeted raw fetches.

Phase 5: Check Tests and Fixtures

Test files often contain the most complete examples of valid configuration:

tests/
test/
fixtures/
testdata/
*_test.rs
*.test.ts
*_test.go

Look for fixture files (.toml, .json, .yaml) in test directories — they exercise edge cases the docs may not cover.

Anti-Patterns

Don'tDo Instead
Fetch github.com/{owner}/{repo}Fetch raw.githubusercontent.com/...
Guess file paths repeatedlyUse the API tree first
Assume docs are completeVerify claims against source types
Read the entire source treeGrep the API tree, then fetch targeted files
Trust outdated blog postsCheck CHANGELOG.md for breaking changes

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

Reviews can't be read right now.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.