Skip to main content

manage-sources

Use when user asks to "add a source", "add docs", "ingest a site", "add this repo to the corpus", "remove a source", "disable a source", or gives a documentation URL to include in the Solana MCP index. Edits ingestion/sources.yaml, validates with pnpm gen:sources, and opens a PR.

설치로 이동

소스 정보

저장소
solana-foundation/solana-mcp-official
최근 소스 활동
2026년 8월 17일 18:18
감지된 SKILL.md 언어
영어
스타
81
포크
22

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
manage-sources
description
Use when user asks to "add a source", "add docs", "ingest a site", "add this repo to the corpus", "remove a source", "disable a source", or gives a documentation URL to include in the Solana MCP index. Edits ingestion/sources.yaml, validates with pnpm gen:sources, and opens a PR.
user-invocable
true
# Manage ingestion sources Add, remove, or disable entries in `ingestion/sources.yaml`, the single source of truth for what the Databricks ingestion job crawls and what `list_sections` exposes. `lib/sources.generated.ts` is gitignored and rebuilt at build time, so a PR only ever touches the yaml. ## Operating procedure ### 1. Dedup check (always first) Search `ingestion/sources.yaml` for the requested URL's domain and any plausible id. A source counts as already present when its `primary_url` shares the domain/path or an existing entry clearly covers the same docs. If found: report the existing entry (id, enabled state, sections) and stop. If it exists but `enabled: false`, ask whether to re-enable instead of adding. For removals: find the entry by id or url. If nothing matches, list the closest candidates and stop. ### 2. Author the entry (add) or delete it (remove) Read the header comment of `ingestion/sources.yaml` before writing — it defines the schema, the closed section taxonomy, and the tagging guidance. Key decisions: - **kind**: `github` for a GitHub repo (docs live in .md/.mdx), `web` for a docs site, `openapi` for a JSON spec. - **id**: kebab-case, unique. GitHub sources use the `gh-` prefix (`gh-anchor`), web sources typically `<project>-docs`. - **sections**: 1–3 tags from the closed taxonomy in the file header. Do not invent tags; the server boot check rejects unknown ones. - **use_cases**: comma-separated routing keywords, strongest hooks first. Written for an agent deciding whether this source answers a query. - Fetch the URL to confirm it resolves and to inform `use_cases`/`sections`. Prefer `sitemaps` when the site publishes one, otherwise `start_urls`. Add `url_include` filters for multi-chain doc sites so only Solana pages are kept. Insert the entry into the matching `# --- ... ---` group in the file, not at the end. Follow the exact field order and style of neighboring entries. Entry shapes to copy: ```yaml - id: example-docs name: Example Docs kind: web enabled: true sections: [defi] use_cases: "Example AMM, swap API, liquidity pools" primary_url: https://docs.example.xyz start_urls: - https://docs.example.xyz - id: gh-example name: GitHub example-org/example kind: github enabled: true sections: [clients] use_cases: "Example SDK source, TypeScript client" primary_url: https://github.com/example-org/example github: { owner: example-org, repo: example, include_readmes: true, include_source_code: true } - id: example-api name: Example API (OpenAPI) kind: openapi enabled: true sections: [data] use_cases: "Example REST API spec, historical data" primary_url: https://api.example.xyz/docs spec_url: https://api.example.xyz/openapi.json ``` To take a source out of rotation without losing its config, prefer `enabled: false` over deletion; delete only when the source is gone for good or was added in error. ### 3. Validate ```bash pnpm install pnpm gen:sources pnpm typecheck ``` `gen:sources` enforces structure (unique ids, kinds, non-empty sections/use_cases); the typecheck's `freezeSources` boot check rejects unknown section tags. All three must pass before committing. ### 4. PR - Branch from `main`: `feat/sources-<id>` (or `chore/sources-remove-<id>`). - Conventional Commit, e.g. `feat(sources): add Example docs` / `chore(sources): remove example-docs`. - `.claude/*` is commonly globally gitignored; when editing this skill itself use `git add -f`. - Open the PR with a body noting: source id, kind, sections, why it belongs in the corpus, and the validation commands run. - Do not merge; a human reviews. ## After merge (mention in the PR body) The Databricks copy of `sources.yaml` refreshes on the next `just deploy` (asset bundle). The daily 09:00 UTC crawl only picks the source up after that deploy. The Cloud Run server side needs nothing extra: push to `main` redeploys and regenerates the catalogue.
GitHub에서 보기