Agent skill

Skill Integrator

by jwynia in jwynia/agent-skills

Integrate installed skill usage guidance into project CLAUDE.md/AGENTS.md based on project context.

MITAuto-check passedAgent Workflows

Install Skill Integrator

skills CLI
$ npx skills add jwynia/agent-skills --skill skill-integrator -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install jwynia/agent-skills skill-integrator --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/jwynia/agent-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/general/meta/skill-integrator .claude/skills/skill-integrator && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
skill-integrator
GitHub stars
169
Token cost
~3.6k tokens
SKILL.md length
188 words
Files
5 (incl. scripts)
Skills in repo
111
Repo updated
First seen
Licence
MIT

At a glance

Integrate installed skill usage guidance into project CLAUDE.md/AGENTS.md based on project context.

  • Works in 7 steps: Check existing state - Does… → Determine state - Match to SI0 (no… → Run analyze-project.ts to detect project… → …
  • Skills are installed but agents dont know when to use them
  • SKILL.md covers Core Principle, Quick Reference, The States and Diagnostic Process, plus 7 more sections
  • Runs TypeScript scripts from its folder; calls deno

What it does

Skill Integrator is an agent skill from jwynia/agent-skills. Integrate installed skill usage guidance into project CLAUDE.md/AGENTS.md based on project context. Use when skills are installed but agents don't know when to use them, when setting up a new project with skills, or when updating guidance after adding skills.

Its SKILL.md is about 3.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 6 other files, including scripts (for example `data/project-patterns.json`, `scripts/analyze-project.ts` and `scripts/generate-guidance.ts`).

It sits in Agent Workflows, covering Agent instruction files. The licence is MIT.

When your agent uses it

  • Skills are installed but agents dont know when to use them
  • Setting up a new project with skills
  • Updating guidance after adding skills

Example prompts

  • “/skill-integrator”

Requirements

  • Node.js

Workflow steps

7 steps, taken from the first numbered list in SKILL.md.

  1. Check existing state - Does CLAUDE.md/AGENTS.md exist? Does it have a <!-- Generated by skill-integrator section? Count installed vs…
  2. Determine state - Match to SI0 (no section), SI1 (stale section), SI2 (single skill addition), or SI3 (wrong fit).
  3. Run analyze-project.ts to detect project type, domains, and tech stack
  4. Run scan-skills.ts to inventory all installed skills
  5. Run generate-guidance.ts to produce the guidance section
  6. Review and refine - The scripts produce structured data; use your judgment to
  7. Present to user - Show the generated guidance section. Apply on approval by inserting/replacing the marked section in CLAUDE.md or…

What it can do on your machine

Read from SKILL.md and the folder at commit e02ec7e. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 3 files in scripts/ (TypeScript), which the agent can run.

    Shell commands in SKILL.md call:

    • deno

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Skill Integrator loads about 3.6k tokens when it runs. Until then it costs about 69 tokens; SKILL.md has 188 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~69
When it runs · the whole SKILL.md, loaded when a task matches
~3.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from jwynia/agent-skills at commit e02ec7e, republished under its MIT licence (© jwynia). 188 words, ~3,614 tokens.

Download SKILL.mdSave it as .claude/skills/skill-integrator/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.
name
skill-integrator
description
Integrate installed skill usage guidance into project CLAUDE.md/AGENTS.md based on project context. Use when skills are installed but agents don't know when to use them, when setting up a new project with skills, or when updating guidance after adding skills.
license
MIT
metadata.author
jwynia
metadata.version
1.0
metadata.domain
infrastructure
metadata.type
utility
metadata.mode
generative

Skill Integrator: Surface Skills Where They're Needed

You bridge the gap between installed skills and agent awareness. Your role is to analyze project context, score installed skills for relevance, and generate actionable trigger-based guidance that gets inserted into CLAUDE.md or AGENTS.md.

Core Principle

Skills only help when agents know to reach for them. A hundred installed skills are useless if the agent doesn't know when each one applies. This skill transforms a silent inventory into active, contextual guidance.

Quick Reference

SituationCommand
First-time setup/skill-integrator → generates full guidance section
After installing a skill/skill-integrator <skill-name> → adds single skill
Guidance feels stale/skill-integrator → regenerates with current inventory
Check what scripts do--help flag on any script

Pipeline:

bash
deno run --allow-read scripts/analyze-project.ts --json > /tmp/ctx.json
deno run --allow-read scripts/scan-skills.ts --json > /tmp/skills.json
deno run --allow-read scripts/generate-guidance.ts --project-context /tmp/ctx.json --skills /tmp/skills.json

The States

State SI0: No Integration

Symptoms: Project has skills installed in .claude/skills/ but CLAUDE.md/AGENTS.md has no skill guidance section. Agents work without awareness of available tools. Key Questions: How many skills are installed? What project type is this? Does CLAUDE.md even exist? Interventions: Run full analysis pipeline: analyze-project → scan-skills → generate-guidance. Generate comprehensive trigger-based section. Present to user for insertion.

State SI1: Stale Integration

Symptoms: A skill guidance section exists (look for <!-- Generated by skill-integrator comment) but skills have been added or removed since it was last generated. Installed skill count doesn't match documented count. Key Questions: Which skills were added since last generation? Which were removed? Has the project type changed? Interventions: Run pipeline again with current state. Diff against existing section. Present changes for approval. Surgically update the marked section.

State SI2: Single Skill Addition

Symptoms: User just installed one skill and wants it integrated into existing guidance. Or user invokes /skill-integrator <skill-name>. Key Questions: What does this skill do? Which trigger category does it belong in? Where in the existing guidance should it go? Interventions: Run single-skill mode: scan the new skill, score against project context, generate a single guidance line with trigger category placement. Insert into existing section at the right location.

State SI3: Wrong Fit

Symptoms: Guidance references irrelevant skills, wrong trigger categories, or generic descriptions that don't help agents decide when to use a skill. Skills are listed but not effectively surfaced. Key Questions: Are trigger categories appropriate for this project type? Are descriptions actionable or just echoing SKILL.md? Does the threshold need adjusting? Interventions: Re-run with adjusted threshold. Review trigger category assignments. Customize descriptions to project-specific contexts rather than generic skill descriptions.

Diagnostic Process

When invoked:

  1. Check existing state - Does CLAUDE.md/AGENTS.md exist? Does it have a <!-- Generated by skill-integrator section? Count installed vs documented skills.

  2. Determine state - Match to SI0 (no section), SI1 (stale section), SI2 (single skill addition), or SI3 (wrong fit).

  3. Run analyze-project.ts to detect project type, domains, and tech stack:

    bash
    deno run --allow-read scripts/analyze-project.ts --json

    Save output as project context.

  4. Run scan-skills.ts to inventory all installed skills:

    bash
    deno run --allow-read scripts/scan-skills.ts --json

    Or for single skill mode:

    bash
    deno run --allow-read scripts/scan-skills.ts --skill <name> --json
  5. Run generate-guidance.ts to produce the guidance section:

    bash
    deno run --allow-read scripts/generate-guidance.ts --project-context ctx.json --skills skills.json

    Or for single skill:

    bash
    deno run --allow-read scripts/generate-guidance.ts --skill <name> --project-context ctx.json --skills skills.json
  6. Review and refine - The scripts produce structured data; use your judgment to:

    • Adjust trigger descriptions to be project-specific
    • Verify trigger category assignments make sense
    • Ensure descriptions answer "when should I use this?" not "what does this do?"
  7. Present to user - Show the generated guidance section. Apply on approval by inserting/replacing the marked section in CLAUDE.md or AGENTS.md.

Two Modes

All-Skills Mode (default)

Invoked with /skill-integrator or when diagnosing SI0/SI1.

  • Analyzes all installed skills against project context
  • Generates comprehensive trigger-based section
  • Groups skills by trigger category (When Planning, When Writing Code, etc.)
  • Only includes skills scoring >= threshold (default 0.3)
Single-Skill Mode

Invoked with /skill-integrator <skill-name> or when diagnosing SI2.

  • Analyzes one specific skill against project context
  • Generates a single guidance line with placement recommendation
  • Shows scoring breakdown for transparency

Available Tools

analyze-project.ts

Detects project type from indicator files, file extensions, and installed skills.

bash
deno run --allow-read scripts/analyze-project.ts
deno run --allow-read scripts/analyze-project.ts --path /some/project
deno run --allow-read scripts/analyze-project.ts --json

Output: ProjectContext JSON with type, domains, techStack, fileTypes, hasContextNetwork, skillsInstalled.

scan-skills.ts

Parses all installed skill SKILL.md files and extracts metadata.

bash
deno run --allow-read scripts/scan-skills.ts
deno run --allow-read scripts/scan-skills.ts --skill code-review
deno run --allow-read scripts/scan-skills.ts --json

Output: Array of SkillInfo objects with name, description, domain, type, mode, keywords, triggerPhrases.

generate-guidance.ts

Scores skills for relevance and generates formatted guidance.

bash
deno run --allow-read scripts/generate-guidance.ts --project-context ctx.json --skills skills.json
deno run --allow-read scripts/generate-guidance.ts --format trigger --threshold 0.3 --project-context ctx.json --skills skills.json
deno run --allow-read scripts/generate-guidance.ts --skill code-review --project-context ctx.json --skills skills.json
deno run --allow-read scripts/generate-guidance.ts --format table --json --project-context ctx.json --skills skills.json

Formats: trigger (default, grouped by when-to-use), domain (grouped by skill domain), table (relevance score table).

Key Questions

For Initial Integration (SI0)
  • How many skills are installed?
  • What is the primary project type?
  • Does CLAUDE.md already exist, or does it need to be created?
  • Are there project-specific trigger contexts beyond the defaults?
For Updates (SI1, SI2)
  • Which skills changed since last integration?
  • Has the project type or tech stack changed?
  • Are existing trigger descriptions still accurate?
For Quality (SI3)
  • Are agents actually using the guided skills?
  • Are trigger descriptions actionable or just descriptive?
  • Is the threshold too low (too many irrelevant skills) or too high (missing useful ones)?

Anti-Patterns

The Skill Dump

Pattern: Listing all installed skills regardless of relevance. Problem: Information overload. Agents can't distinguish useful from irrelevant. Guidance becomes noise. Fix: Use threshold-based scoring. Only include skills with relevance >= 0.3. Quality over quantity. Detection: More than 30 skills in the guidance section, or skills with no domain overlap appearing.

The Feature Echo

Pattern: Duplicating SKILL.md descriptions verbatim in the guidance. Problem: Descriptions answer "what does this do?" instead of "when should I use this?" Agents need trigger context, not feature lists. Fix: Transform descriptions into trigger-based guidance. "Use when [situation]" not "This skill [capability]." Detection: Guidance text matches SKILL.md description word-for-word.

The Static Guide

Pattern: Generating guidance once and never updating after adding/removing skills. Problem: Guidance becomes stale. New skills go unused. Removed skills cause confusion. Fix: Re-run skill-integrator after any skill installation. Use the timestamp comment to track freshness. Detection: Timestamp in <!-- Generated by skill-integrator comment is more than 30 days old while skills were recently changed.

Show full SKILL.md (619 more words)Show less

Example Interaction

User: "I just installed a bunch of skills but my agent doesn't seem to know about them."

Your approach:

  1. Identify State SI0 (no guidance section in CLAUDE.md)
  2. Run analyze-project.ts --json to detect project type
  3. Run scan-skills.ts --json to inventory installed skills
  4. Run generate-guidance.ts with project context and skills data
  5. Review output, adjust descriptions for project context
  6. Present trigger-based guidance section to user
  7. On approval, insert into CLAUDE.md with timestamped markers

User: "/skill-integrator code-review"

Your approach:

  1. Identify State SI2 (single skill addition)
  2. Run scan-skills.ts --skill code-review --json
  3. Run analyze-project.ts --json for context
  4. Run generate-guidance.ts --skill code-review for targeted scoring
  5. Present the recommended guidance line and trigger category placement
  6. On approval, insert into the existing guidance section

What You Do NOT Do

  • You do not rewrite SKILL.md files or modify skills themselves
  • You do not install or uninstall skills
  • You do not modify CLAUDE.md without user approval
  • You do not include skills below the relevance threshold without explicit request
  • You do not generate guidance for skills that don't have SKILL.md files
  • You diagnose and generate; the user decides what goes into their config

Integration Graph

Inbound (From Other Skills)
Source SkillSource StateLeads to State
skill-builderAfter creating a new skillSI2: Single Skill Addition
find-skillsAfter installing a skillSI2: Single Skill Addition
Outbound (To Other Skills)
This StateLeads to SkillTarget State
SI3: Wrong Fitskill-builderQuality issues found during analysis
Complementary Skills
SkillRelationship
context-networkGuidance section lives in CLAUDE.md which context-network also manages
agent-bootstrapNew project setup benefits from immediate skill integration
skill-builderAfter building a skill, integrate it into project guidance
find-skillsAfter discovering and installing skills, surface them via guidance

Reasoning Requirements

Standard Reasoning
  • Running scripts and interpreting output
  • Matching skills to trigger categories
  • Basic state identification (SI0-SI3)
Extended Reasoning (ultrathink)

Use extended thinking for:

  • Customizing trigger descriptions to project-specific contexts - [Why: requires understanding both skill capability and project needs]
  • Evaluating threshold adjustments when many skills are borderline - [Why: trade-off analysis between coverage and noise]
  • Resolving SI3 wrong-fit situations - [Why: requires reasoning about why current categorizations fail]

Trigger phrases: "customize guidance", "refine triggers", "adjust threshold"

Execution Strategy

Sequential (Default)
  • analyze-project.ts must complete before generate-guidance.ts
  • scan-skills.ts must complete before generate-guidance.ts
  • State identification before running pipeline
Parallelizable
  • analyze-project.ts and scan-skills.ts can run concurrently
  • Multiple single-skill scans can run concurrently
Subagent Candidates
TaskAgent TypeWhen to Spawn
Project analysisBashRunning analyze-project.ts
Skill scanningBashRunning scan-skills.ts (especially for 100+ skills)

Context Management

Approximate Token Footprint
  • Skill base: ~3k tokens
  • With script outputs inline: ~6k tokens
  • With full skill inventory (100+ skills): ~15k tokens (write to file, don't inline)
Context Optimization
  • Always write script JSON output to temporary files rather than inlining
  • Reference skills by name rather than embedding full metadata
  • Use --json output mode for scripts, only inline the final guidance markdown
When Context Gets Tight
  • Prioritize: Current state diagnosis and generated guidance output
  • Defer: Full skill inventory details, scoring breakdowns
  • Drop: Raw project file type counts, individual skill metadata

Output Persistence

Output Discovery

Before doing any other work:

  1. Check if CLAUDE.md exists in the project root
  2. Check if it already has a <!-- Generated by skill-integrator section
  3. If CLAUDE.md doesn't exist, ask the user where to place the guidance
Primary Output

For this skill, persist:

  • Guidance section - The trigger-based markdown inserted into CLAUDE.md/AGENTS.md
  • Timestamp marker - HTML comment marking the section for surgical updates
Conversation vs. File
Goes to FileStays in Conversation
Trigger-based guidance sectionScoring breakdown and reasoning
Timestamp markersState diagnosis discussion
CLAUDE.md updatesThreshold adjustment discussion
File Naming

Pattern: Inserted section within existing CLAUDE.md or AGENTS.md Markers: <!-- Generated by skill-integrator | Last updated: YYYY-MM-DD -->

© jwynia, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 4 other files (scripts) in skills/general/meta/skill-integrator of jwynia/agent-skills.

  • SKILL.md
  • data/project-patterns.json
  • scripts/analyze-project.ts
  • scripts/generate-guidance.ts
  • scripts/scan-skills.ts

Open the folder on GitHubat commit e02ec7e

Compare with similar skills

Skill Integrator next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Skill Integrator compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Skill Integrator this skilljwynia/agent-skills169—~3.6kAutomated safety check: PassMIT
Using Agent Skillsaddyosmani/agent-skills103k4 repos~2.4kAutomated safety check: PassMIT
Claude ReflectBayramAnnakov/claude-reflect1.7k2 repos~627Automated safety check: PassMIT
Neat-Freak Knowledge CloseoutKKKKhazix/khazix-skills21k—~1.9kAutomated safety check: PassMIT
Writing For Agentsbestofjs/bestofjs3.1k18 repos~2.7kAutomated safety check: PassMIT
Task Observerrebelytics/one-skill-to-rule-them-all3.2k1 repos~12kAutomated safety check: PassCC-BY-4.0

Similar skills

  • Using Agent Skills

    addyosmani/agent-skills

    Meta-skill for choosing which workflow skill fits the task at hand, plus always-on habits: surface assumptions, stop on confusion, push back, keep it simple and stay in scope.

    103k GitHub starsUsed in 4 repos~2.4k tokens
    Agent WorkflowsAuto-check passed
  • Claude Reflect

    BayramAnnakov/claude-reflect

    Self-learning system that captures corrections during sessions and reminds users to run /reflect to update CLAUDE.md.

    1.7k GitHub starsUsed in 2 repos~627 tokens
    Agent WorkflowsAuto-check passed
  • Neat-Freak Knowledge Closeout

    KKKKhazix/khazix-skills

    Brings project docs, agent rule files, authorized memory and leftover workspace files back in line with what the code and runtime actually do at the end of a work session.

    21k GitHub stars~1.9k tokensUpdated 8 days ago
    Agent WorkflowsAuto-check passed
  • Writing For Agents

    bestofjs/bestofjs

    Writing documents for agents. An agent skill from bestofjs/bestofjs.

    3.1k GitHub starsUsed in 18 repos~2.7k tokens
    Agent WorkflowsAuto-check passed
  • Task Observer

    rebelytics/one-skill-to-rule-them-all

    Monitors task execution for skill improvement opportunities.

    3.2k GitHub starsUsed in 1 repo~12k tokens
    Agent WorkflowsAuto-check passed
  • SkillOpt Sleep Cycle

    microsoft/SkillOpt

    Official

    Runs an on-demand or nightly sleep cycle that reviews past Claude Code sessions and proposes validated updates to CLAUDE.md and skills.

    18k GitHub stars~2.3k tokensUpdated 3 days ago
    Agent WorkflowsAuto-check passed

More from jwynia/agent-skills

All 111 skills in this repo
  • Devcontainer

    jwynia/agent-skills

    Diagnose devcontainer configuration problems and guide development environment setup.

    169 GitHub stars~1.2k tokensUpdated 7 mo ago
    Auto-check: notes
  • Frontend Design

    jwynia/agent-skills

    Create distinctive, production-grade frontend interfaces with high design quality.

    169 GitHub stars~3.2k tokensUpdated 7 mo ago
    Auto-check passed
  • Gitea Workflow

    jwynia/agent-skills

    Orchestrate agile development workflows for Gitea repositories using the tea CLI.

    169 GitHub stars~3.8k tokensUpdated 7 mo ago
    Auto-check passed
  • Godot Asset Generator

    jwynia/agent-skills

    Generate game assets using AI image generation APIs (DALL-E, Replicate, fal.ai) and prepare them for Godot.

    169 GitHub stars~3.8k tokensUpdated 7 mo ago
    Auto-check passed
  • Mastra Hono

    jwynia/agent-skills

    Develop AI agents, tools, and workflows with Mastra v1 Beta and Hono servers.

    169 GitHub stars~2.9k tokensUpdated 7 mo ago
    Auto-check passed
  • PPTX Generator

    jwynia/agent-skills

    Create and manipulate PowerPoint PPTX files programmatically.

    169 GitHub stars~3.1k tokensUpdated 7 mo ago
    Auto-check passed

Categories

Questions about Skill Integrator

What does Skill Integrator do?

Integrate installed skill usage guidance into project CLAUDE.md/AGENTS.md based on project context. Skill Integrator is an agent skill from jwynia/agent-skills.md based on project context.

When should I use Skill Integrator?

Skill Integrator fits situations like: skills are installed but agents dont know when to use them; setting up a new project with skills; updating guidance after adding skills.

How do I install Skill Integrator in Claude Code?

Run `npx skills add jwynia/agent-skills --skill skill-integrator -a claude-code`. Or copy the skill folder (skills/general/meta/skill-integrator in jwynia/agent-skills) into .claude/skills/skill-integrator in your project. Claude Code loads it when a task matches its description.

How do I install Skill Integrator in Codex?

Run `npx skills add jwynia/agent-skills --skill skill-integrator -a codex`. Or copy the skill folder (skills/general/meta/skill-integrator in jwynia/agent-skills) into .agents/skills/skill-integrator in your project. Codex loads it when a task matches its description.

Can I use Skill Integrator in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add jwynia/agent-skills --skill skill-integrator -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/skill-integrator, .gemini/skills/skill-integrator, .github/skills/skill-integrator and .opencode/skills/skill-integrator in your project.

What does Skill Integrator need to run?

Going by SKILL.md and its folder, Skill Integrator needs TypeScript for the scripts in its folder and the command-line tools its instructions call (deno). Our summary lists: Node.js.

Does Skill Integrator access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Skill Integrator safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Skill Integrator use?

Skill Integrator is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Skill Integrator use?

About 3.6k tokens (SKILL.md is roughly 14k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Skill Integrator?

Skills that share tags, products or a category with Skill Integrator: Using Agent Skills (addyosmani/agent-skills, 103k stars), Claude Reflect (BayramAnnakov/claude-reflect, 1.7k stars), Neat-Freak Knowledge Closeout (KKKKhazix/khazix-skills, 21k stars) and Writing For Agents (bestofjs/bestofjs, 3.1k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Skill Integrator?

jwynia (a GitHub user) maintains it in jwynia/agent-skills, which has 169 GitHub stars. The repository holds 111 skills in this directory. The repository was last updated on February 24, 2026.

Source: jwynia/agent-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.