Source profileQuality 93/100

first-fluke/oh-my-agent/skills/oma-scholar/SKILL.md

oma-scholar

Scholarly research companion using Knows sidecar spec (.knows.yaml). Generates, validates, reviews, queries, and compares structured research-paper sidecars, and fetches them from knows.academy. Use for academic literature search, survey synthesis, paper authoring assistance, and peer review with token-efficient claim/evidence/relation access.

Source repository stars
1,253
Declared platforms
0
Static risk flags
1
Last source update
2026-08-28
Source checked
2026-08-28

Decision brief

What it does: where it fits

Scholarly research companion using Knows sidecar spec (. knows.

Best for

    Not for

    • Tasks that require unconfirmed production actions or broad system permissions.
    • Environments where the pinned source and install steps cannot be inspected.

    Compatibility matrix

    Platform support, with evidence labels

    PlatformStatusEvidenceWhat to check
    CodexNot declaredNo explicit evidencePortability before use
    Claude CodeNot declaredNo explicit evidencePortability before use
    CursorNot declaredNo explicit evidencePortability before use
    Gemini CLINot declaredNo explicit evidencePortability before use
    Open the compatibility checker

    Installation

    Inspect first. Install second.

    The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.

    Source-detected install commandSource
    npx skills add https://github.com/first-fluke/oh-my-agent --skill "skills/oma-scholar"
    Safe inspection promptEditorial

    Inspect the Agent Skill "oma-scholar" from https://github.com/first-fluke/oh-my-agent/blob/ca736256275e4dc8c15a1fe967eb8c8d1df5fddc/skills/oma-scholar/SKILL.md at commit ca736256275e4dc8c15a1fe967eb8c8d1df5fddc. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.

    Workflow

    What the source asks the agent to do

    1. 01

      How to Execute

      Follow resources/execution-protocol.md step by step for the selected mode.

      Follow resources/execution-protocol.md step by step for the selected mode.
    2. 02

      Scheduling

      Search, fetch, generate, validate, analyze, review, and compare scholarly paper sidecars using the Knows .knows.yaml spec for token-efficient research workflows.

      User asks for academic literature search, sidecar generation, sidecar validation, paper claims/evidence summary, structural paper comparison, or peer review as sidecar.User references Knows, .knows.yaml, knows.academy, OpenAlex, claims, evidence, relations, or paper sidecars.Reading research papers token-efficiently via Knows sidecars (700 tokens for claims-only vs 10K for full PDF)
    3. 03

      Goal

      Search, fetch, generate, validate, analyze, review, and compare scholarly paper sidecars using the Knows .knows.yaml spec for token-efficient research workflows.

      Search, fetch, generate, validate, analyze, review, and compare scholarly paper sidecars using the Knows .knows.yaml spec for token-efficient research workflows.
    4. 04

      Intent signature

      User asks for academic literature search, sidecar generation, sidecar validation, paper claims/evidence summary, structural paper comparison, or peer review as sidecar.

      User asks for academic literature search, sidecar generation, sidecar validation, paper claims/evidence summary, structural paper comparison, or peer review as sidecar.User references Knows, .knows.yaml, knows.academy, OpenAlex, claims, evidence, relations, or paper sidecars.- User asks for academic literature search, sidecar generation, sidecar validation, paper claims/evidence summary, structural paper comparison, or peer review as sidecar. - User references Knows, .knows.yaml, knows.acad…
    5. 05

      When to use

      Reading research papers token-efficiently via Knows sidecars (700 tokens for claims-only vs 10K for full PDF)

      Reading research papers token-efficiently via Knows sidecars (700 tokens for claims-only vs 10K for full PDF)Generating .knows.yaml sidecars from your own paper drafts, LaTeX, or research notesValidating sidecar structure (rule-based) before sharing

    Permission review

    Static risk signals and limitations

    Network access

    medium · line 88

    The documentation includes network, browsing, or remote request actions.

    | Request remote data | `REQUEST` | Knows/OpenAlex APIs |

    Network access

    medium · line 236

    The documentation includes network, browsing, or remote request actions.

    curl -s "https://knows.academy/api/proxy/search?q=..."

    Evidence record

    Why each signal appears

    EvidenceSourceComputedTestedEditorial
    SignalValueEvidence typeMeaning
    Quality score93/100ComputedDocumentation, specificity, maintenance, and trust rules
    Repository stars1,253SourceRepository attention, not individual Skill quality
    Compatibility0 platformsSourceDeclared in the catalog source record
    Usage guideautomated source guideEditorialGenerated or reviewed according to the visible evidence level

    Pinned source

    Provenance and original SKILL.md

    Repository
    first-fluke/oh-my-agent
    Skill path
    skills/oma-scholar/SKILL.md
    Commit
    ca736256275e4dc8c15a1fe967eb8c8d1df5fddc
    License
    MIT
    Collected
    2026-08-28
    Default branch
    main
    View the original SKILL.md

    Scholar - Research Paper Sidecar Companion

    Scheduling

    Goal

    Search, fetch, generate, validate, analyze, review, and compare scholarly paper sidecars using the Knows .knows.yaml spec for token-efficient research workflows.

    Intent signature

    • User asks for academic literature search, sidecar generation, sidecar validation, paper claims/evidence summary, structural paper comparison, or peer review as sidecar.
    • User references Knows, .knows.yaml, knows.academy, OpenAlex, claims, evidence, relations, or paper sidecars.

    When to use

    • Reading research papers token-efficiently via Knows sidecars (~700 tokens for claims-only vs ~10K for full PDF)
    • Generating .knows.yaml sidecars from your own paper drafts, LaTeX, or research notes
    • Validating sidecar structure (rule-based) before sharing
    • Producing peer reviews as sidecars
    • Querying or summarizing existing sidecars
    • Structurally comparing two papers (claims, methods, evidence)
    • Searching/fetching sidecars from knows.academy (2026 papers only; current counts via /api/proxy/jobs/stats)

    When NOT to use

    • General web search or non-academic content -> use oma-search
    • Translating papers -> use oma-translation
    • PDF parsing only (no sidecar) -> use oma-pdf
    • Submitting sidecars back to knows.academy -> out of scope (host LLM only consumes/produces locally)
    • Full peer-review workflow with editor system -> out of scope

    Expected inputs

    • Paper, abstract, draft, LaTeX, research notes, sidecar file, DOI, OpenAlex ID, Knows record ID, or search query
    • Desired mode: generate, validate, review, analyze, compare, or remote fetch
    • Optional strictness, section filter, or CI behavior

    Expected outputs

    • .knows.yaml sidecar, review sidecar, lint report, search/fetch result, natural-language analysis, or structural comparison
    • Sidecars conforming to v0.9.0 / paper@1 profile
    • Validation status and warnings before sharing generated sidecars

    Dependencies

    • oma scholar CLI subcommands
    • knows.academy public API; OpenAlex and Semantic Scholar fallbacks
    • resources/sidecar-spec.md, API endpoints, OpenAlex setup, upstream cache, checklist, and execution protocol

    Control-flow features

    • Branches by mode, source availability, Knows/OpenAlex coverage, strict vs lenient validation, and fetched section
    • Reads/writes YAML sidecars and may call public APIs
    • Avoids fabrication when source evidence is missing

    Structural Flow

    Entry

    1. Identify mode and source artifact/query.
    2. Resolve paper identity through Knows or OpenAlex when needed.
    3. Load sidecar spec and mode-specific protocol.

    Scenes

    1. PREPARE: Select mode and gather source or remote identifiers.
    2. ACQUIRE: Fetch paper metadata, sidecar sections, or local source text.
    3. REASON: Extract claims, evidence, relations, provenance, or comparison structure.
    4. ACT: Generate, lint, review, analyze, compare, or fetch sidecar data.
    5. VERIFY: Validate schema, enums, IDs, relations, and provenance.
    6. FINALIZE: Return sidecar, report, summary, or comparison with caveats.

    Transitions

    • If knows.academy lacks the paper, fall back to OpenAlex metadata/abstract.
    • If generating a sidecar, run lint before sharing.
    • If consuming third-party sidecars with dangling references, use lenient mode when appropriate.
    • If source evidence is absent, omit fields instead of guessing.

    Failure and recovery

    • If remote API times out, retry or use OpenAlex fallback.
    • If YAML fails parsing, fix indentation and scalar types.
    • If relation density or orphan statements warn, add supported-by relations when source evidence supports them.

    Exit

    • Success: requested sidecar operation completes with validation status.
    • Partial success: missing metadata, fallback source, or validation warnings are explicit.

    Logical Operations

    Actions

    ActionSSL primitiveEvidence
    Select modeSELECTGenerate/Validate/Review/Analyze/Compare/Remote
    Read paper or sidecarREADSource files or YAML
    Request remote dataREQUESTKnows/OpenAlex APIs
    Infer claims/evidence/relationsINFERSidecar generation/analysis
    Write sidecarWRITE.knows.yaml outputs
    Validate sidecarVALIDATEoma scholar lint
    Report resultNOTIFYSummary or lint report

    Tools and instruments

    • oma scholar search|resolve|get|lint
    • Knows public API, OpenAlex fallback, sidecar spec, checklist

    Canonical command path

    oma scholar search "<query>"
    oma scholar resolve "<title-or-doi>"
    oma scholar get "<record-id-or-doi>"
    oma scholar lint "<paper.knows.yaml>"
    

    Resource scope

    ScopeResource target
    LOCAL_FSPaper drafts, sidecar YAML, review sidecars
    NETWORKknows.academy and OpenAlex APIs
    PROCESSoma scholar CLI and lint
    USER_DATAUser-provided paper content and research notes

    Preconditions

    • Mode and source are identifiable.
    • Spec rules are available for generation or validation.

    Effects and side effects

    • May create local sidecar or review sidecar files.
    • May query public scholarly APIs.
    • Does not submit sidecars back to knows.academy.

    Guardrails

    1. Target spec is v0.9.0 / paper@1 profile (review sidecars use review@1): verified against production sidecars from knows.academy; see resources/sidecar-spec.md
    2. Host LLM generates sidecars: never shell out to anthropic SDK or external LLM CLI; this skill runs inside an agent
    3. Anti-fabrication: if DOI/venue/year is not visible in source, omit the key entirely; never write doi: TODO or guess
    4. Top-level metadata: title, authors, venue, year live at the top level (no metadata wrapper)
    5. Field names are exact: statement_type, evidence_type, predicate, artifact_type (not type/claim)
    6. Provenance has SINGLE actor: provenance.actor is one object, NOT a provenance.actors array
    7. Confidence is an object: {claim_strength: ..., extraction_fidelity: ...}, both from high|medium|low
    8. Coverage is an object: coverage.statements (4-value enum) + coverage.evidence (3-value enum)
    9. Closed enums: actor tool|person|org (never ai/llm/model); artifact role subject|supporting|cited; predicates in present tense
    10. Numbers unquoted: value: 22, never value: '22'
    11. Relation density: average ≥1.5 relations per statement; every claim needs supported_by evidence (checklist rule — lint enforces only the average-ratio warning and a per-id warning for statements with zero relations)
    12. ID format: descriptive kebab-case with prefix: stmt:privacy-budget-tradeoff, ev:cifar10-accuracy-table, art:paper
    13. Validate before sharing: run oma scholar lint after Generate and Review; cross-record refs (record_id#local_id) in review sidecars are recognized and not flagged as dangling
    14. Remote API has no auth: https://knows.academy/api/proxy/* is public; do not invent auth headers
    15. Partial fetch param is section (singular): fixed enum statements|evidence|relations|artifacts|citation
    16. Fallback API keys are optional: OPENALEX_API_KEY (metadata enrichment) and S2_API_KEY (Semantic Scholar dedicated rate limit) both improve throughput but the cascade degrades gracefully without them
    17. Sidecar content stays English: schema fields, IDs, statement text follow upstream convention; user-facing responses follow oma-config.yaml language
    18. Spec drift awareness: our local rules track v0.9.0 production behavior, which differs from the upstream knows.md natural-language description; refresh resources/upstream-spec-cache.md periodically

    Modes

    ModeTriggerOutput
    Generate"create sidecar from this paper / abstract / draft", "generate .knows.yaml"{paper}.knows.yaml (host LLM emits, then oma scholar lint validates)
    Validate"lint this sidecar", "validate .knows.yaml"Pass/fail report with file:line issues
    Review"peer review this paper as sidecar"{paper}.review.knows.yaml
    Analyze"summarize this sidecar", "what claims does it make?"Natural-language answer
    Compare"compare paper A and paper B structurally"Diff table (claims/methods/evidence)
    Remote"find papers on X", "fetch sidecar :id", "get claims only for :id"Search results / sidecar payload

    Provider Fallback (knows.academy → OpenAlex → Semantic Scholar)

    knows.academy currently indexes only 2026 papers (mostly arXiv). For older or non-2026 papers (Transformer 2017, BERT 2018, classics, journals), the skill automatically falls back to OpenAlex for metadata and abstract, then to Semantic Scholar (AI TL;DR, citation + influential-citation counts) when OpenAlex also has nothing. See resources/fallback-providers.md.

    Use the oma scholar CLI subcommands:

    # Hybrid search: knows first, OpenAlex fallback
    oma scholar search "vision language action"
    
    # Cross-source resolve: figures out which source has the right paper
    oma scholar resolve "Attention Is All You Need"
    
    # Get by id (knows record_id, OpenAlex W-id, DOI, arXiv:<id>, CorpusId:<n>)
    oma scholar get "10.48550/arXiv.1706.03762"
    

    When OpenAlex returns the answer (knows.academy lacks the paper), use the returned abstract as input to Mode 1 Generate to produce a local sidecar.

    How to Execute

    Follow resources/execution-protocol.md step by step for the selected mode.

    Quick Reference

    Search (knows + auto OpenAlex fallback)

    oma scholar search "diffusion super resolution"
    oma scholar search --year-min 2024 "vision language action"
    

    Find one specific paper

    oma scholar resolve "Attention Is All You Need"
    # returns top hit from each source + recommendation
    

    Fetch a sidecar or work

    # knows.academy full sidecar
    oma scholar get "knows:generated/reconvla/1.0.0"
    
    # Partial fetch (claims only, ~700 tokens, 93% reduction vs PDF)
    oma scholar get --section statements "knows:generated/reconvla/1.0.0"
    
    # By DOI or OpenAlex W-id (works regardless of knows.academy availability)
    oma scholar get "10.48550/arXiv.1706.03762"
    
    # Semantic Scholar: AI TL;DR + citation/influential-citation counts
    oma scholar get "arXiv:1706.03762"
    

    When knows.academy is unreachable, get knows:... automatically falls back to OpenAlex by extracting the slug from the record_id. The result is marked with fallback: "openalex" and contains metadata + abstract, useful for running Mode 1 Generate locally.

    Validate

    # Strict mode for own Generate output (default)
    oma scholar lint paper.knows.yaml
    
    # Lenient mode for third-party / fetched sidecars
    oma scholar lint --lenient remote.knows.yaml
    
    # Treat warnings as failures (CI mode)
    oma scholar lint --fail-on-warning paper.knows.yaml
    

    About 47% of knows.academy-served sidecars contain at least one dangling cross-reference (typo in subject_ref/object_ref, measured across 15 production samples). Use --lenient when consuming third-party records so these surface as warnings rather than blocking errors.

    Raw API (when CLI is unavailable)

    curl -s "https://knows.academy/api/proxy/search?q=..."
    curl -s "https://knows.academy/api/proxy/sidecars/<encoded-id>"
    curl -s "https://knows.academy/api/proxy/partial?record_id=<id>&section=statements"
    curl -s "https://knows.academy/api/proxy/jobs/stats"   # platform health
    

    Configuration

    Project-specific settings: config/scholar-config.yaml. One key is user-tunable and lives elsewhere — read scholar.base_url from .agents/oma-config.yaml first and fall back to api.base_url in the skill config. Everything else there (endpoint paths, timeouts, id prefixes, lint rules) is protocol shape, not preference.

    Troubleshooting

    IssueSolution
    [ERROR] *.value: numeric value '22' is quotedRemove quotes: value: '22' -> value: 22
    [ERROR] provenance.actor.type: 'ai' is not allowedChange to tool, person, or org
    [ERROR] *.type: use \statement_type` instead of `type``Rename type -> statement_type (or evidence_type/predicate/artifact_type)
    [ERROR] provenance.actors: v0.9 spec uses singular \actor``Replace actors: [{...}] array with actor: {...} object
    [ERROR] *.object_ref: reference 'X' does not match any defined idFix the subject_ref/object_ref to point to a real id, OR use --lenient if consuming third-party data (cross-record record_id#local_id refs are recognized and never flagged)
    [WARN] relations: avg relations/statement is N.NN (target ≥ 1.5)Add more supported_by/depends_on relations
    [WARN] statements: only N statements; most papers warrant ≥ 8Expected when generating from abstract only; full-paper Generate should hit 15+
    [WARN] *.predicate: past-tense '...' is suspiciousSwitch to present tense (evaluated_on -> evaluates_on)
    Remote API returns empty resultsTry broader query; check /api/proxy/jobs/stats; CLI auto-falls-back to OpenAlex
    knows.academy search failed: fetch failed (stderr)Platform timeout; fallback to OpenAlex is automatic; retry later for sidecars
    OpenAlex 403/429Set OPENALEX_API_KEY (see resources/setup-openalex.md)
    semanticscholar error: HTTP 429 (stderr)Anonymous pool throttled; CLI retries once then skips the source. Set S2_API_KEY (free form at semanticscholar.org/product/api) for a dedicated limit
    YAML won't parseCheck indentation; numbers/booleans must be unquoted; strings with : need quotes

    References

    • Execution steps: resources/execution-protocol.md
    • Sidecar spec rules: resources/sidecar-spec.md
    • API endpoints: resources/api-endpoints.md
    • OpenAlex setup: resources/setup-openalex.md
    • Upstream spec snapshot: resources/upstream-spec-cache.md
    • Post-generation checklist: resources/checklist.md
    • CLI subcommands: oma scholar search|resolve|get|lint (implementation under cli/commands/scholar/)
    • Context loading: ../_shared/core/context-loading.md
    • Quality principles: ../_shared/core/quality-principles.md
    • i18n rules: ../../rules/i18n-guide.md

    Frequently asked questions

    What to verify before installation and use

    What does the oma-scholar source document cover?

    Scholarly research companion using Knows sidecar spec (. knows.

    How do I install oma-scholar?

    The source record exposes this install command: npx skills add https://github.com/first-fluke/oh-my-agent --skill "skills/oma-scholar". Inspect the command and pinned source before running it.

    Which permission-related actions were detected?

    Static rules flagged network in the source; the page lists the matching lines and excerpts.

    Alternatives

    Compare before choosing

    Computed 931,253

    first-fluke/oh-my-agent

    oma-scholar

    Scholarly research companion using Knows sidecar spec (.knows.yaml). Generates, validates, reviews, queries, and compares structured research-paper sidecars, and fetches them from knows.academy. Use for academic literature search, survey synthesis, paper authoring assistance, and peer review with token-efficient claim/evidence/relation access.

    Computed 10025,136

    alirezarezvani/claude-skills

    app-store-optimization

    App Store Optimization (ASO) toolkit for researching keywords, analyzing competitor rankings, generating metadata suggestions, and improving app visibility on Apple App Store and Google Play Store. Use when the user asks about ASO, app store rankings, app metadata, app titles and descriptions, app store listings, app visibility, or mobile app marketing on iOS or Android. Supports keyword research and scoring, competitor keyword analysis, metadata optimization, A/B test planning, launch checklist

    Computed 10015,385

    wanshuiyin/Auto-claude-code-research-in-sleep

    citation-audit

    Use it for operations and research tasks; the detail page covers purpose, installation, and practical steps.

    Computed 10014,706

    prowler-cloud/prowler

    postgresql-indexing

    PostgreSQL indexing best practices for Prowler: index design, partial indexes, partitioned table indexing, EXPLAIN ANALYZE validation, concurrent operations, monitoring, and maintenance. Trigger: When creating or modifying PostgreSQL indexes, analyzing query performance with EXPLAIN, debugging slow queries, reviewing index usage statistics, reindexing, dropping indexes, or working with partitioned table indexes. Also trigger when discussing index strategies, partial indexes, or index maintenance