본문으로 건너뛰기
cccskills
무료GitHub에 공개

citation-injector

APPLIES/consumes a `citation-diversifier` budget report (`output/CITATION_BUDGET_REPORT.md`) to inject *in-scope* citations into an existing draft (NO NEW FACTS), so the run passes the global unique-citation gate without citation dumps.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

실행 점수 미검증

설치 방법 보기

포함된 파일(2)

  • SKILL.md5.8 KB
  • scripts/run.py18.4 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Citation Injector (deterministic baseline edits; budget-as-constraints)

Triggers & routing

  • Trigger: citation injector, apply citation budget, inject citations, add citations safely, 引用注入, 按预算加引用, 引用增密.

Purpose: make the pipeline converge when the draft is:

  • locally citation-dense but globally under-cited (too few unique keys), or
  • overly reusing the same citations across many subsections.

This skill is intentionally conservative and scriptable:

  • the script edits output/DRAFT.md directly using the budget report as constraints
  • injections stay evidence-neutral (NO NEW FACTS) and use only in-scope keys already listed for each H3

Inputs

  • output/DRAFT.md
  • output/CITATION_BUDGET_REPORT.md (from citation-diversifier)
  • outline/outline.yml (H3 id/title mapping)
  • citations/ref.bib (must contain every injected key)

Outputs

  • output/DRAFT.md (updated in place)
  • output/CITATION_INJECTION_REPORT.md (PASS/FAIL + what you changed)

Non-negotiables (NO NEW FACTS)

  • Only inject keys listed for that H3 in the budget report.
  • Do not introduce new numbers, new benchmarks, or superiority claims.
  • Do not add narration templates such as This subsection discusses or Next, we examine.
  • Do not produce cite dumps like [@a; @b; @c] as the only citations in a paragraph.

Paper-voice injection patterns (safe sentence shapes)

Use these as sentence intentions (paraphrase; do not copy verbatim).

  1. Axis-anchored exemplars (preferred)
  • Systems such as X [@a] and Y [@b] instantiate <axis/design point>, whereas Z [@c] explores a contrasting point under a different protocol.
  1. Parenthetical grounding (short, low-risk)
  • The same design pressure appears in nearby systems (e.g., X [@a], Y [@b], Z [@c]).
  1. Cluster pointer + contrast hint
  • Representative implementations span both <cluster A> (X [@a], Y [@b]) and <cluster B> (Z [@c]), suggesting that the trade-off hinges on <lens>.
  1. Decision-lens pointer
  • For builders choosing between <A> and <B>, prior systems provide concrete instantiations on both sides (X [@a]; Y [@b]; Z [@c]).
  1. Evaluation-lens pointer (still evidence-neutral)
  • Across commonly used agent evaluations, systems such as X [@a] and Y [@b] illustrate how <lens> is operationalized, while Z [@c] highlights a different constraint.
  1. Contrast without list voice
  • While many works operationalize <topic> via <mechanism> (X [@a]; Y [@b]), others treat it as <alternative> (Z [@c]), which changes the failure modes discussed later.

Anti-patterns (high-signal “budget dump” voice)

Avoid these stems (they read like automated injection):

  • A few representative references include
  • Notable lines of work include
  • Concrete examples include

If your draft contains these, rewrite them immediately using the patterns above (keep citation keys unchanged).

Placement guidance

  • Prefer inserting citations where the subsection already states a concrete contrast or decision lens.
  • If you must add a new sentence/mini-paragraph, place it early (often after paragraph 1) so it reads as positioning, not as an afterthought.
  • Keep injections subsection-specific: mention the subsection lens (H3 title / contrast_hook) so the same sentence cannot be copy-pasted into every H3.

Workflow

  1. Read the budget report (output/CITATION_BUDGET_REPORT.md)
  • Treat Global target (policy; blocking) as the PASS line for the pipeline gate (derived from queries.md:citation_target; A150++ default: recommended).
  • If Gap: 0, do nothing: write a short PASS report and move on.
  • Otherwise, for each H3 with suggested keys, pick enough keys to close the gap to target:
    • small gaps: 3-6 keys / H3
    • A150++ gaps: often 6-12 keys / H3 Prefer keys that are unused globally and avoid repeating the same new keys across many H3s.
  1. Inject in the right subsection
  • Use outline/outline.yml to confirm H3 ordering and ensure the injected sentence lands inside the correct ### subsection.
  1. Inject with paper voice
  • Prefer one short, axis-anchored sentence over a long enumerator sentence.
  • Keep injections evidence-neutral (NO NEW FACTS) and avoid new numbers.
  • Before you commit an injected key, confirm it exists in citations/ref.bib.
  1. Write output/CITATION_INJECTION_REPORT.md
  • Record which H3s you touched and which keys were added.
  • Mark - Status: PASS only when the global target is met.
  1. Verify
  • Rerun the validator script (below) to recheck the global target.
  • Then run draft-polisher to smooth any residual injection voice (citation keys must remain unchanged).

Done criteria

  • output/CITATION_INJECTION_REPORT.md exists and is - Status: PASS.
  • pipeline-auditor no longer FAILs on “unique citations too low”.

Script (optional; deterministic injector + validator)

You usually do not run this manually; it exists so a pipeline runner can deterministically apply a baseline injection and validate the target.

Quick Start

  • uv run python .codex/skills/citation-injector/scripts/run.py --workspace <workspace>

All Options

  • --workspace <dir>
  • --unit-id <U###> (optional; for logs)
  • --inputs <semicolon-separated> (rare override; prefer defaults)
  • --outputs <semicolon-separated> (rare override; default validates output/CITATION_INJECTION_REPORT.md)
  • --checkpoint <C#> (optional)

Examples

  • After you generate the budget report and want the script to apply the baseline injection:
    • uv run python .codex/skills/citation-injector/scripts/run.py --workspace <workspace>

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Internal template for creating or refactoring a skill into the repository's reference-first shape. **Trigger**: reference-first template, blueprint skill, create a reusable skill, refactor a script-heavy skill. **Use when**: you need a lean `SKILL.md`, explicit `references/`, machine-readable `assets/`, and a minimal deterministic `run.py`.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

WILLOSCAR/research-units-pipeline-skills5152026년 10월 5일 업데이트

Download a small corpus of open-access arXiv survey/review PDFs about agentic systems and extract text for style learning.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

WILLOSCAR/research-units-pipeline-skills5152026년 10월 5일 업데이트

Extract per-subsection “anchor facts” (NO PROSE) from evidence packs so the writer is forced to include concrete numbers/benchmarks/limitations instead of generic summaries.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

WILLOSCAR/research-units-pipeline-skills5152026년 10월 5일 업데이트

Curate reader-facing survey tables for the Appendix (clean layout + high information density), using only in-scope evidence and existing citation keys.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

WILLOSCAR/research-units-pipeline-skills5152026년 10월 5일 업데이트

Build a final, machine-readable argument snapshot from current H3 sections and refresh section fingerprints before merge.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

WILLOSCAR/research-units-pipeline-skills5152026년 10월 5일 업데이트

Audit one research Workspace for declared Unit outputs and Pipeline target Artifacts, writing `output/CONTRACT_REPORT.md`; use for mid-Run coverage snapshots or final delivery completeness, not deep provenance integrity.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

WILLOSCAR/research-units-pipeline-skills5152026년 10월 5일 업데이트

WILLOSCAR의 스킬 모두 보기

이 스킬의 문제 신고