curl -L -o citation-verifier.skill "https://aiskillstore.io/v1/agent/skills/4c3b0896-09fe-4de8-838f-63d251c76572/download?platform=ClaudeCode"
{
"tool": "download_skill",
"arguments": {
"skill_id": "4c3b0896-09fe-4de8-838f-63d251c76572",
"platform": "ClaudeCode"
}
}
{
"mcpServers": {
"skill-store": {
"url": "https://aiskillstore.io/mcp/"
}
}
}
Verify that references really exist via live Crossref, OpenAlex, PubMed and arXiv lookups: catches fabricated DOIs, real-DOI/wrong-title pairings and retracted papers; exports verified BibTeX / CSL JSON. 참고문헌 실재·철회 여부 교차검증.
Compatible Platforms any
✅ No security risks found.
AI Review Stage
스킬 메타데이터와 코드 파일을 종합적으로 분석한 결과, 다음과 같은 판단 근거를 확인했습니다: 1. **선언된 권한과 코드 일치 여부:** * `network: true` 권한은 Crossref, OpenAlex, PubMed, arXiv, DataCite 등 외부 학술 데이터베이스 API를 호출하는 `lib/http.py` 및 `lib/sources.py` 코드와 정확히 일치합니다. * `filesystem: false` 권한은 스킬 설명('this skill never reads files')과 일치하며, 제공된 코드에서 파일 시스템 접근(읽기/쓰기)을 시도하는 부분이 발견되지 않았습니다. 입력은 `stdin`으로, 출력은 `stdout`으로 처리됩니다. * `subprocess: false` 권한은 제공된 코드에서 `subprocess` 모듈이나 `os.system` 등 외부 프로세스를 실행하는 코드가 발견되지 않아 일치합니다. * `env_vars`에 선언된 환경 변수(`CROSSREF_MAILTO`, `NCBI_API_KEY`, `OPENALEX_API_KEY`)는 `lib/verify.py`의 `Ctx` 클래스에서 사용되며, `lib/http.py`에서는 이메일이나 API 키와 같은 민감한 파라미터를 요청 로그에서 제거하는(`SENSITIVE_PARAMS`) 보안 조치가 적용되어 있습니다. 2. **악의적 목적의 코드 여부:** * 제공된 코드에서 데이터 탈취, 시스템 파괴, 난독화 등 악의적인 목적을 가진 코드는 발견되지 않았습니다. `eval()`, `exec()`와 같은 위험한 함수 사용도 없습니다. * 코드 구조가 명확하고, 각 모듈의 역할이 잘 분리되어 있어 가독성이 높습니다. 3. **선언되지 않은 외부 통신 여부:** * 모든 외부 통신은 스킬의 핵심 기능인 참고문헌 검증을 위한 학술 데이터베이스 API 호출로 제한됩니다. 이는 `network: true` 권한에 명시된 범위 내에서 이루어지며, 선언되지 않은 다른 외부 통신은 발견되지 않았습니다. 4. **사용자 데이터 무단 수집/전송 여부:** * `lib/http.py`에서 `SENSITIVE_PARAMS`를 정의하여 `mailto`, `api_key` 등 민감한 정보를 요청 로그에 기록하지 않도록 명시적으로 처리하고 있습니다. 이는 사용자 프라이버시 보호에 대한 노력을 보여줍니다. * 사용자 입력은 `stdin`을 통해 받아 처리하고, 결과는 `stdout`으로 반환하며, 처리 과정에서 필요한 API 호출 외에 사용자 데이터를 무단으로 수집하거나 제3자에게 전송하는 징후는 없습니다. 5. **코드 품질 및 스킬 목적 일치 여부:** * 코드는 `requests` 라이브러리, `threading` 모듈 등 표준 Python 라이브러리를 사용하여 안정적으로 구현되었습니다. * API 호출 시 Rate Limiting 및 Concurrency 제어를 통해 외부 서비스에 대한 부하를 줄이고 안정적인 동작을 보장합니다. * 입력 파싱, 텍스트 정규화, 유사도 계산, BibTeX/CSL JSON 내보내기 등 스킬의 목적에 부합하는 기능들이 체계적으로 구현되어 있습니다. * 특히, BibTeX/CSL JSON 내보내기 시 사용자 입력이 아닌 *레지스트리에서 검증된 메타데이터*를 기반으로 생성하여 데이터 품질과 보안을 높였습니다. * 정적 분석 결과에서도 'approved' 상태로 'red_flags_found', 'obfuscation_warnings', 'forbidden_exec_files_found' 항목이 모두 비어 있어 코드의 안전성과 품질이 높음을 뒷받침합니다. 결론적으로, 이 스킬은 명확한 목적을 가지고 있으며, 선언된 권한을 준수하고, 사용자 데이터를 안전하게 처리하며, 높은 코드 품질을 유지하고 있어 안전하게 승인될 수 있습니다.
Representative input/output examples for this skill. Agents can use these to understand how to invoke the skill and what output to expect.
Confirm that two DOIs are registered. No title is supplied, so only existence (and retraction status) is checked. (output abridged)
{
"dois": [
"10.1038/nature14539",
"10.1126/science.1258096"
]
}
{
"bibtex": "@article{lecun2015deep,\n author = {LeCun, Yann and Bengio, Yoshua and Hinton, Geoffrey},\n title = {{Deep learning}},\n journal = {Nature},\n year = {2015},\n volume = {521},\n number = {7553},\n pages = {436--444},\n publisher = {Springer Science and Business Media LLC},\n doi = {10.1038/nature14539},\n url = {https://doi.org/10.1038/nature14539}\n}\n\n@article{doudna2014frontier,\n author = {Doudna, Jennifer A. and Charpentier, Emmanuelle},\n title = {{The new frontier of genome engineering with CRISPR-Cas9}},\n journal = {Science},\n year = {2014},\n volume = {346},\n number = {6213},\n publisher = {American Association for the Advancement of Science (AAAS)},\n doi = {10.1126/science.1258096},\n url = {https://doi.org/10.1126/science.1258096}\n}",
"overall": "PASS",
"results": [
{
"confidence": 0.96,
"exists": true,
"index": 0,
"issues": [
{
"code": "EXISTENCE_ONLY",
"message": "Only existence was checked: no title/author/year was supplied to compare against."
}
],
"match": {
"doi": "10.1038/nature14539",
"title": "Deep learning",
"year": 2015
},
"retraction": {
"status": "none"
},
"status": "verified",
"title_similarity": null
},
{
"confidence": 0.96,
"exists": true,
"index": 1,
"issues": [
{
"code": "EXISTENCE_ONLY",
"message": "Only existence was checked: no title/author/year was supplied to compare against."
}
],
"match": {
"doi": "10.1126/science.1258096",
"title": "The new frontier of genome engineering with CRISPR-Cas9",
"year": 2014
},
"retraction": {
"status": "none"
},
"status": "verified",
"title_similarity": null
}
],
"summary": {
"expression_of_concern": 0,
"likely_match": 0,
"not_found": 0,
"retracted": 0,
"title_mismatch": 0,
"total": 2,
"unverifiable": 0,
"verified": 2
}
}
The DOI is real but belongs to a different paper than the cited title (typical LLM hallucination). (output abridged)
{
"references": [
{
"authors": [
"Vaswani, A."
],
"doi": "10.1038/nature14539",
"title": "Attention is all you need",
"year": 2017
}
]
}
{
"overall": "FAIL",
"results": [
{
"confidence": 0.06,
"exists": true,
"index": 0,
"issues": [
{
"code": "TITLE_MISMATCH",
"message": "The DOI exists but points to a different work: \"Deep learning\". The cited title does not match."
},
{
"code": "SUGGESTION",
"message": "A registry record with a similar title exists; check whether the DOI was mistyped."
}
],
"match": {
"doi": "10.1038/nature14539",
"title": "Deep learning",
"year": 2015
},
"retraction": {
"status": "none"
},
"status": "title_mismatch",
"suggestions": [
{
"doi": null,
"title": "Attention Is All You Need"
}
],
"title_similarity": 0.105
}
],
"summary": {
"expression_of_concern": 0,
"likely_match": 0,
"not_found": 0,
"retracted": 0,
"title_mismatch": 1,
"total": 1,
"unverifiable": 0,
"verified": 0
}
}
A DOI that no registry knows. doi.org itself reports that it does not exist. (output abridged)
{
"references": [
{
"doi": "10.1234/fake.doi.2020.001",
"title": "A Study of Quantum Banana Peels",
"year": 2020
}
]
}
{
"overall": "FAIL",
"results": [
{
"confidence": 0.02,
"exists": false,
"index": 0,
"issues": [
{
"code": "DOI_NOT_FOUND",
"message": "DOI is not registered: not found in crossref, openalex, pubmed and doi.org reports it does not exist. Likely fabricated or mistyped."
}
],
"retraction": {
"status": "unknown"
},
"status": "not_found",
"title_similarity": null
}
],
"summary": {
"expression_of_concern": 0,
"likely_match": 0,
"not_found": 1,
"retracted": 0,
"title_mismatch": 0,
"total": 1,
"unverifiable": 0,
"verified": 0
}
}
Retraction is read from Crossref (Retraction Watch feed), OpenAlex and PubMed. A retracted paper makes the overall verdict FAIL. (output abridged)
{
"text": "Wolfe-Simon F, Blum JS, Kulp TR, et al. A bacterium that can grow by using arsenic instead of phosphorus. Science. 2011;332(6034):1163-1166. doi:10.1126/science.1197258"
}
{
"bibtex": "@article{wolfesimon2011bacterium,\n author = {Wolfe-Simon, Felisa and Blum, Jodi Switzer and Kulp, Thomas R. and Gordon, Gwyneth W. and Hoeft, Shelley E. and Pett-Ridge, Jennifer and Stolz, John F. and Webb, Samuel M. and Weber, Peter K. and Davies, Paul C. W. and Anbar, Ariel D. and Oremland, Ronald S.},\n title = {{RETRACTED: A Bacterium That Can Grow by Using Arsenic Instead of Phosphorus}},\n journal = {Science},\n year = {2011},\n volume = {332},\n number = {6034},\n pages = {1163--1166},\n publisher = {American Association for the Advancement of Science (AAAS)},\n doi = {10.1126/science.1197258},\n url = {https://doi.org/10.1126/science.1197258},\n note = {RETRACTED}\n}",
"overall": "FAIL",
"results": [
{
"confidence": 0.96,
"exists": true,
"index": 0,
"issues": [
{
"code": "RETRACTED",
"message": "RETRACTED (2025-07-24). Do not cite as valid evidence. Notice: https://doi.org/10.1126/science.adu5488"
}
],
"match": {
"doi": "10.1126/science.1197258",
"title": "RETRACTED: A Bacterium That Can Grow by Using Arsenic Instead of Phosphorus",
"year": 2011
},
"retraction": {
"status": "retracted"
},
"status": "verified",
"title_similarity": 1.0
}
],
"summary": {
"expression_of_concern": 0,
"likely_match": 0,
"not_found": 0,
"retracted": 1,
"title_mismatch": 0,
"total": 1,
"unverifiable": 0,
"verified": 1
}
}
No DOI given: the reference is searched in Crossref/PubMed/OpenAlex and accepted only if title, authors and year agree. Registry-verified BibTeX is returned. (output abridged)
{
"formats": [
"bibtex"
],
"text": "[1] LeCun, Y., Bengio, Y., \u0026 Hinton, G. (2015). Deep learning. Nature, 521(7553), 436-444.\n[2] Smith, J. and Nobody, Q. (2021). A comprehensive meta-analysis of quantum banana peel thermodynamics. Journal of Imaginary Results, 12(3), 45-67."
}
{
"bibtex": "@article{lecun2015deep,\n author = {LeCun, Yann and Bengio, Yoshua and Hinton, Geoffrey},\n title = {{Deep learning}},\n journal = {Nature},\n year = {2015},\n volume = {521},\n number = {7553},\n pages = {436--444},\n publisher = {Springer Science and Business Media LLC},\n doi = {10.1038/nature14539},\n url = {https://doi.org/10.1038/nature14539}\n}",
"overall": "FAIL",
"results": [
{
"confidence": 0.92,
"exists": true,
"index": 0,
"issues": [],
"match": {
"doi": "10.1038/nature14539",
"title": "Deep learning",
"year": 2015
},
"retraction": {
"status": "none"
},
"status": "verified",
"title_similarity": 1.0
},
{
"confidence": 0.1,
"exists": false,
"index": 1,
"issues": [
{
"code": "NOT_FOUND_SEARCH",
"message": "No registry record matched this reference. It may be a book, report, thesis, web page or a non-indexed work - or it may be fabricated."
}
],
"retraction": {
"status": "unknown"
},
"status": "not_found",
"suggestions": [
{
"doi": "10.1002/9781119558378.ch49",
"title": "Comprehensive Meta\u2010Analysis Software"
}
],
"title_similarity": null
}
],
"summary": {
"expression_of_concern": 0,
"likely_match": 0,
"not_found": 1,
"retracted": 0,
"title_mismatch": 0,
"total": 2,
"unverifiable": 0,
"verified": 1
}
}
Set lang=ko for Korean issue messages. arXiv ids are verified against the arXiv API in one batched call. (output abridged)
{
"formats": [],
"lang": "ko",
"references": [
"arXiv:1706.03762",
{
"doi": "10.1234/fake.doi.2020.001",
"title": "\uc874\uc7ac\ud558\uc9c0 \uc54a\ub294 \ub17c\ubb38"
}
]
}
{
"overall": "FAIL",
"results": [
{
"confidence": 0.9,
"exists": true,
"index": 0,
"issues": [
{
"code": "EXISTENCE_ONLY",
"message": "\uc874\uc7ac \uc5ec\ubd80\ub9cc \ud655\uc778\ud588\uc2b5\ub2c8\ub2e4: \ube44\uad50\ud560 \uc81c\ubaa9/\uc800\uc790/\uc5f0\ub3c4\uac00 \uc785\ub825\ub418\uc9c0 \uc54a\uc558\uc2b5\ub2c8\ub2e4."
}
],
"match": {
"title": "Attention Is All You Need",
"year": 2017
},
"retraction": {
"status": "none"
},
"status": "verified",
"title_similarity": null
},
{
"confidence": 0.02,
"exists": false,
"index": 1,
"issues": [
{
"code": "DOI_NOT_FOUND",
"message": "\ub4f1\ub85d\ub418\uc9c0 \uc54a\uc740 DOI\uc785\ub2c8\ub2e4: crossref, openalex, pubmed \uc5d0\uc11c \ucc3e\uc744 \uc218 \uc5c6\uace0 doi.org \ub3c4 \uc874\uc7ac\ud558\uc9c0 \uc54a\ub294\ub2e4\uace0 \uc751\ub2f5\ud588\uc2b5\ub2c8\ub2e4. \uc870\uc791\ub418\uc5c8\uac70\ub098 \uc624\ud0c0\uc77c \uac00\ub2a5\uc131\uc774 \ub192\uc2b5\ub2c8\ub2e4."
}
],
"retraction": {
"status": "unknown"
},
"status": "not_found",
"title_similarity": null
}
],
"summary": {
"expression_of_concern": 0,
"likely_match": 0,
"not_found": 1,
"retracted": 0,
"title_mismatch": 0,
"total": 2,
"unverifiable": 0,
"verified": 1
}
}
BibTeX entries are parsed directly. Title and authors match but the year differs from the registry, so the entry is likely_match (review) with a corrected BibTeX returned. (output abridged)
{
"bibtex": "@article{doudna2019,\n author = {Doudna, Jennifer A. and Charpentier, Emmanuelle},\n title = {The new frontier of genome engineering with {CRISPR}-Cas9},\n journal = {Science},\n year = {2019},\n doi = {10.1126/science.1258096}\n}",
"formats": [
"bibtex"
]
}
{
"bibtex": "@article{doudna2014frontier,\n author = {Doudna, Jennifer A. and Charpentier, Emmanuelle},\n title = {{The new frontier of genome engineering with CRISPR-Cas9}},\n journal = {Science},\n year = {2014},\n volume = {346},\n number = {6213},\n publisher = {American Association for the Advancement of Science (AAAS)},\n doi = {10.1126/science.1258096},\n url = {https://doi.org/10.1126/science.1258096}\n}",
"overall": "PASS",
"results": [
{
"confidence": 0.82,
"exists": true,
"index": 0,
"issues": [
{
"code": "YEAR_MISMATCH",
"message": "Cited year does not match the registry year(s) [2014]."
}
],
"match": {
"doi": "10.1126/science.1258096",
"title": "The new frontier of genome engineering with CRISPR-Cas9",
"year": 2014
},
"retraction": {
"status": "none"
},
"status": "likely_match",
"title_similarity": 1.0
}
],
"summary": {
"expression_of_concern": 0,
"likely_match": 1,
"not_found": 0,
"retracted": 0,
"title_mismatch": 0,
"total": 1,
"unverifiable": 0,
"verified": 0
}
}
All examples are also available via the agent API:
/v1/agent/skills/4c3b0896-09fe-4de8-838f-63d251c76572/schema
No reviews yet. Be the first to leave one!