
cite-assist-research
by donaldbraman
SKILL.md
name: Cite-Assist Research description: Semantic search across Zotero library using cite-assist v3 API for academic research version: 1.0.0
Cite-Assist Research Skill
Domain: Academic research and citation retrieval Version: 1.0.0 Last Updated: 2025-12-15
Overview
Cite-assist provides semantic search across a Zotero library with ~224 documents and ~41k text chunks. It uses ModernBERT-large embeddings with MPS GPU acceleration for fast, accurate retrieval of relevant passages and document summaries.
API Endpoint
POST http://localhost:8000/api/v3/search
Request Format
{
"query": "prosecutorial discretion",
"library_id": 5673253,
"max_results": 10,
"min_score": 0.3,
"output_mode": "auto",
"weights": {"chunk": 0.8, "summary": 0.2}
}
Parameters
| Parameter | Required | Default | Description |
|---|---|---|---|
query | Yes | - | Natural language search text |
library_id | Yes | 5673253 | Zotero library ID |
max_results | No | 10 | Maximum results to return (1-50) |
min_score | No | 0.3 | Minimum similarity threshold (0.0-1.0) |
output_mode | No | auto | Result format (see Output Modes) |
weights | No | {chunk: 0.8, summary: 0.2} | Score weighting between chunk and summary matches |
Output Modes
| Mode | Returns | Best For |
|---|---|---|
auto | Chunks OR summaries (whichever scores higher) | General research, exploratory searches |
chunks | Only text chunks with context | Finding quotable passages, specific evidence |
summaries | Only document summaries | Document-level matching, literature review |
both | Both chunk + summary per result | Comprehensive research, need context + evidence |
Mode Selection Guide
Use auto when:
- Starting research on a new topic
- Unsure whether you need passages or document overviews
- Want the system to optimize for relevance
Use chunks when:
- Need specific quotable passages
- Looking for particular arguments or evidence
- Building support for a specific claim
Use summaries when:
- Conducting literature review
- Need to understand what documents cover a topic
- Looking for documents to read in full
Use both when:
- Need comprehensive research results
- Want to see both the specific passage and document context
- Evaluating multiple sources for depth
Response Format
{
"results": [
{
"id": "SCC7P3FV",
"title": "Progressive Prosecution",
"result_type": "chunk",
"score": 0.85,
"chunk_text": "Prosecutorial discretion allows...",
"chunk_index": 5,
"summary": "This article examines...",
"chunk_score": 0.85,
"summary_score": 0.60
}
]
}
Response Fields by Mode
| Field | auto | chunks | summaries | both |
|---|---|---|---|---|
id | Yes | Yes | Yes | Yes |
title | Yes | Yes | Yes | Yes |
result_type | Yes | "chunk" | "summary" | "both" |
score | Yes | Yes | Yes | Yes |
chunk_text | Maybe | Yes | No | Yes |
chunk_index | Maybe | Yes | No | Yes |
summary | Maybe | No | Yes | Yes |
chunk_score | Maybe | Yes | No | Yes |
summary_score | Maybe | No | Yes | Yes |
Performance Characteristics
| Metric | Value |
|---|---|
| Mean response time | ~372ms |
| Embedding generation | ~200-300ms (MPS GPU) |
| Qdrant search | ~100ms |
| First request warmup | 2-3s (model loading) |
Research Workflow
1. Exploratory Search
Start broad with auto mode to understand what's available:
{
"query": "criminal justice reform",
"output_mode": "auto",
"max_results": 15
}
2. Targeted Evidence Search
Narrow to specific passages with chunks mode:
{
"query": "prosecutorial discretion reduces racial disparities",
"output_mode": "chunks",
"min_score": 0.5,
"max_results": 10
}
3. Literature Review
Use summaries mode to map the field:
{
"query": "progressive prosecution movement",
"output_mode": "summaries",
"max_results": 20
}
4. Comprehensive Research
Use both mode for thorough analysis:
{
"query": "plea bargaining coercion",
"output_mode": "both",
"max_results": 10
}
Adjusting Weights
The weights parameter controls how chunk vs. summary scores contribute to final ranking:
{
"weights": {"chunk": 0.8, "summary": 0.2}
}
High chunk weight (default): Prioritizes specific passage matches High summary weight: Prioritizes document-level relevance
Adjust for your research needs:
{"chunk": 1.0, "summary": 0.0}- Pure passage search{"chunk": 0.5, "summary": 0.5}- Balanced search{"chunk": 0.2, "summary": 0.8}- Document-focused search
Integration with Bluebook
After retrieving sources, format citations using the Academic Bluebook skill:
See `.claude/skills/academic-bluebook/SKILL.md` for citation formatting rules.
Key integration points:
- Use document
titlefor article titles (italicize in academic format) - Use
id(Zotero key) to retrieve full metadata if needed - Apply appropriate signals based on how source supports your argument
Collections Reference
| Collection | Contents | Use |
|---|---|---|
text_chunks | ~41k semantic chunks | Passage search |
document_sync_status | 224 documents + summaries | Document search |
Error Handling
| Error | Cause | Resolution |
|---|---|---|
| Connection refused | cite-assist server not running | Start server on port 8000 |
| Empty results | Query too specific or min_score too high | Broaden query, lower min_score |
| Timeout | First request loading model | Wait for warmup, retry |
Available Workflows
workflows/exploratory-search.md- Initial research on a topicworkflows/evidence-gathering.md- Finding supporting passagesworkflows/literature-review.md- Mapping sources on a topic
Cite-assist enables semantic research across your academic library.
Score
Total Score
Based on repository quality metrics
SKILL.mdファイルが含まれている
ライセンスが設定されている
100文字以上の説明がある
GitHub Stars 100以上
3ヶ月以内に更新がある
10回以上フォークされている
オープンIssueが50未満
プログラミング言語が設定されている
1つ以上のタグが設定されている
Reviews
Reviews coming soon