@prismer/runtime 2.2.55 → 2.2.64
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +574 -0
- package/apc/skills/releasing-test/SKILL.md +9 -0
- package/built-in-skills/agent-coordination/SKILL.md +21 -4
- package/built-in-skills/agent-meta/SKILL.md +11 -0
- package/built-in-skills/assets/SKILL.md +1 -1
- package/built-in-skills/canvas-design/SKILL.md +3 -3
- package/built-in-skills/canvas-design/canvas-fonts/IBMPlexSerif-OFL.txt +93 -0
- package/built-in-skills/canvas-design/canvas-fonts/InstrumentSerif-OFL.txt +93 -0
- package/built-in-skills/canvas-design/canvas-fonts/LICENSE-SOURCES.md +16 -0
- package/built-in-skills/claim-agent-ownership/SKILL.md +7 -3
- package/built-in-skills/claude-api/SKILL.md +1 -1
- package/built-in-skills/claude-api/python/claude-api/README.md +2 -2
- package/built-in-skills/claude-api/python/claude-api/tool-use.md +9 -5
- package/built-in-skills/claude-api/python/managed-agents/README.md +11 -1
- package/built-in-skills/claude-api/shared/error-codes.md +4 -4
- package/built-in-skills/claude-api/shared/managed-agents-client-patterns.md +4 -2
- package/built-in-skills/claude-api/shared/managed-agents-core.md +1 -2
- package/built-in-skills/claude-api/shared/managed-agents-events.md +41 -22
- package/built-in-skills/claude-api/shared/managed-agents-multiagent.md +5 -3
- package/built-in-skills/claude-api/shared/managed-agents-self-hosted-sandboxes.md +1 -1
- package/built-in-skills/claude-api/shared/managed-agents-tools.md +2 -3
- package/built-in-skills/claude-api/shared/model-migration.md +3 -3
- package/built-in-skills/claude-api/shared/models.md +1 -1
- package/built-in-skills/claude-api/typescript/claude-api/batches.md +1 -1
- package/built-in-skills/claude-api/typescript/claude-api/files-api.md +3 -1
- package/built-in-skills/claude-api/typescript/claude-api/tool-use.md +8 -2
- package/built-in-skills/claude-api/typescript/managed-agents/README.md +8 -2
- package/built-in-skills/codebase-design/SKILL.md +15 -1
- package/built-in-skills/codebase-design/references/requesting-code-review/GUIDE.md +291 -0
- package/built-in-skills/codebase-design/references/requesting-code-review/LICENSE +21 -0
- package/built-in-skills/codebase-design/references/requesting-code-review/LICENSE.superpowers +21 -0
- package/built-in-skills/codebase-design/references/requesting-code-review/NOTICE.md +37 -0
- package/built-in-skills/codebase-design/references/sdlc-review/GUIDE.md +130 -0
- package/built-in-skills/codebase-design/references/sdlc-review/LICENSE +21 -0
- package/built-in-skills/codebase-design/references/sdlc-review/NOTICE.md +17 -0
- package/built-in-skills/codebase-design/references/simplify-code/GUIDE.md +269 -0
- package/built-in-skills/codebase-design/references/simplify-code/LICENSE +21 -0
- package/built-in-skills/codebase-design/references/simplify-code/NOTICE.md +37 -0
- package/built-in-skills/competitor-intelligence/LICENSE +21 -0
- package/built-in-skills/competitor-intelligence/NOTICE.md +6 -0
- package/built-in-skills/competitor-intelligence/SKILL.md +125 -0
- package/built-in-skills/competitor-intelligence/scripts/watch_state.py +160 -0
- package/built-in-skills/conversation-compaction/SKILL.md +3 -0
- package/built-in-skills/council-creator/SKILL.md +4 -3
- package/built-in-skills/diagnosing-bugs/SKILL.md +12 -0
- package/built-in-skills/diagnosing-bugs/references/desktop-dom/GUIDE.md +64 -0
- package/built-in-skills/diagnosing-bugs/references/desktop-dom/LICENSE +21 -0
- package/built-in-skills/diagnosing-bugs/references/desktop-dom/NOTICE.md +17 -0
- package/built-in-skills/diagnosing-bugs/references/systematic-debugging/GUIDE.md +410 -0
- package/built-in-skills/diagnosing-bugs/references/systematic-debugging/LICENSE +21 -0
- package/built-in-skills/diagnosing-bugs/references/systematic-debugging/LICENSE.superpowers +21 -0
- package/built-in-skills/diagnosing-bugs/references/systematic-debugging/NOTICE.md +37 -0
- package/built-in-skills/doc-coauthoring/SKILL.md +6 -0
- package/built-in-skills/doc-coauthoring/references/humanizer/GUIDE.md +647 -0
- package/built-in-skills/doc-coauthoring/references/humanizer/LICENSE +21 -0
- package/built-in-skills/doc-coauthoring/references/humanizer/LICENSE.hermes +21 -0
- package/built-in-skills/doc-coauthoring/references/humanizer/PROVENANCE.md +7 -0
- package/built-in-skills/document-actions/LICENSE +21 -0
- package/built-in-skills/document-actions/NOTICE.md +21 -0
- package/built-in-skills/document-actions/SKILL.md +46 -0
- package/built-in-skills/evidence-citations/LICENSE +21 -0
- package/built-in-skills/evidence-citations/NOTICE.md +21 -0
- package/built-in-skills/evidence-citations/SKILL.md +46 -0
- package/built-in-skills/evidence-citations/references/citation-formats.md +68 -0
- package/built-in-skills/evidence-citations/references/grounding-rationale.md +64 -0
- package/built-in-skills/evidence-citations/scripts/sources.py +720 -0
- package/built-in-skills/frontend-design/SKILL.md +6 -0
- package/built-in-skills/frontend-design/references/claude-design/GUIDE.md +650 -0
- package/built-in-skills/frontend-design/references/claude-design/LICENSE +21 -0
- package/built-in-skills/frontend-design/references/claude-design/LICENSE.hermes +21 -0
- package/built-in-skills/frontend-design/references/claude-design/PROVENANCE.md +7 -0
- package/built-in-skills/image-generate/SKILL.md +5 -0
- package/built-in-skills/image-generate/scripts/generate-and-deliver.mjs +24 -3
- package/built-in-skills/mcp-builder/reference/evaluation.md +11 -2
- package/built-in-skills/mcp-builder/reference/node_mcp_server.md +34 -5
- package/built-in-skills/mcp-builder/reference/python_mcp_server.md +6 -2
- package/built-in-skills/mcp-builder/scripts/connections.py +1 -1
- package/built-in-skills/mcp-builder/scripts/evaluation.py +52 -34
- package/built-in-skills/mcp-builder/scripts/requirements.txt +2 -2
- package/built-in-skills/meeting-actions/LICENSE +21 -0
- package/built-in-skills/meeting-actions/NOTICE.md +21 -0
- package/built-in-skills/meeting-actions/SKILL.md +48 -0
- package/built-in-skills/memory/SKILL.md +27 -3
- package/built-in-skills/memory/references/llm-wiki/GUIDE.md +468 -0
- package/built-in-skills/memory/references/llm-wiki/LICENSE +21 -0
- package/built-in-skills/memory/references/llm-wiki/NOTICE.md +4 -0
- package/built-in-skills/memory/references/llm-wiki/scripts/lint_wiki.py +84 -0
- package/built-in-skills/memory/references/llm-wiki/scripts/requirements.txt +1 -0
- package/built-in-skills/memory/references/llm-wiki/templates/SCHEMA.md +19 -0
- package/built-in-skills/memory/references/llm-wiki/templates/index.md +9 -0
- package/built-in-skills/memory/references/llm-wiki/templates/log.md +4 -0
- package/built-in-skills/memory-dream/SKILL.md +8 -15
- package/built-in-skills/memory-import/SKILL.md +51 -0
- package/built-in-skills/office-artifacts/NOTICE.md +15 -0
- package/built-in-skills/office-artifacts/SKILL.md +20 -0
- package/built-in-skills/office-artifacts/references/RESOURCE-LIMITS.md +44 -0
- package/built-in-skills/office-artifacts/references/docx/GUIDE.md +196 -0
- package/built-in-skills/office-artifacts/references/docx/LICENSE +21 -0
- package/built-in-skills/office-artifacts/references/docx/NOTICE.md +21 -0
- package/built-in-skills/office-artifacts/references/docx/references/revisions-and-comments.md +88 -0
- package/built-in-skills/office-artifacts/references/docx/scripts/docx_comments.py +292 -0
- package/built-in-skills/office-artifacts/references/docx/scripts/docx_common.py +93 -0
- package/built-in-skills/office-artifacts/references/docx/scripts/docx_create.py +177 -0
- package/built-in-skills/office-artifacts/references/docx/scripts/docx_edit.py +250 -0
- package/built-in-skills/office-artifacts/references/docx/scripts/docx_read.py +169 -0
- package/built-in-skills/office-artifacts/references/docx/scripts/docx_revisions.py +149 -0
- package/built-in-skills/office-artifacts/references/docx/scripts/docx_template.py +70 -0
- package/built-in-skills/office-artifacts/references/docx/scripts/docx_validate.py +155 -0
- package/built-in-skills/office-artifacts/references/docx/tests/test_docx_skill.py +525 -0
- package/built-in-skills/office-artifacts/references/pdf/GUIDE.md +125 -0
- package/built-in-skills/office-artifacts/references/pdf/LICENSE +21 -0
- package/built-in-skills/office-artifacts/references/pdf/NOTICE.md +21 -0
- package/built-in-skills/office-artifacts/references/pdf/references/forms.md +99 -0
- package/built-in-skills/office-artifacts/references/pdf/references/nano-pdf-editing.md +40 -0
- package/built-in-skills/office-artifacts/references/pdf/references/ocr-extraction.md +165 -0
- package/built-in-skills/office-artifacts/references/pdf/scripts/_raster.py +87 -0
- package/built-in-skills/office-artifacts/references/pdf/scripts/extract_marker.py +95 -0
- package/built-in-skills/office-artifacts/references/pdf/scripts/extract_pymupdf.py +107 -0
- package/built-in-skills/office-artifacts/references/pdf/scripts/pdf_create.py +153 -0
- package/built-in-skills/office-artifacts/references/pdf/scripts/pdf_fill_form.py +97 -0
- package/built-in-skills/office-artifacts/references/pdf/scripts/pdf_form_layout.py +168 -0
- package/built-in-skills/office-artifacts/references/pdf/scripts/pdf_make_form.py +145 -0
- package/built-in-skills/office-artifacts/references/pdf/scripts/pdf_merge.py +50 -0
- package/built-in-skills/office-artifacts/references/pdf/scripts/pdf_meta.py +123 -0
- package/built-in-skills/office-artifacts/references/pdf/scripts/pdf_page_image.py +101 -0
- package/built-in-skills/office-artifacts/references/pdf/scripts/pdf_read.py +153 -0
- package/built-in-skills/office-artifacts/references/pdf/scripts/pdf_secure.py +71 -0
- package/built-in-skills/office-artifacts/references/pdf/scripts/pdf_split.py +86 -0
- package/built-in-skills/office-artifacts/references/pdf/scripts/pdf_stamp.py +145 -0
- package/built-in-skills/office-artifacts/references/pdf/scripts/pdf_watermark.py +51 -0
- package/built-in-skills/office-artifacts/references/pdf/tests/test_pdf_skill.py +414 -0
- package/built-in-skills/office-artifacts/references/powerpoint/GUIDE.md +220 -0
- package/built-in-skills/office-artifacts/references/powerpoint/LICENSE +21 -0
- package/built-in-skills/office-artifacts/references/powerpoint/NOTICE.md +21 -0
- package/built-in-skills/office-artifacts/references/powerpoint/scripts/pptx_create.py +214 -0
- package/built-in-skills/office-artifacts/references/powerpoint/scripts/pptx_edit.py +442 -0
- package/built-in-skills/office-artifacts/references/powerpoint/scripts/pptx_from_template.py +88 -0
- package/built-in-skills/office-artifacts/references/powerpoint/scripts/pptx_read.py +131 -0
- package/built-in-skills/office-artifacts/references/powerpoint/scripts/pptx_render.py +104 -0
- package/built-in-skills/office-artifacts/references/powerpoint/tests/test_powerpoint_skill.py +478 -0
- package/built-in-skills/office-artifacts/references/xlsx/GUIDE.md +196 -0
- package/built-in-skills/office-artifacts/references/xlsx/LICENSE +21 -0
- package/built-in-skills/office-artifacts/references/xlsx/NOTICE.md +21 -0
- package/built-in-skills/office-artifacts/references/xlsx/references/restructuring.md +74 -0
- package/built-in-skills/office-artifacts/references/xlsx/scripts/csv_to_xlsx.py +108 -0
- package/built-in-skills/office-artifacts/references/xlsx/scripts/xlsx_create.py +259 -0
- package/built-in-skills/office-artifacts/references/xlsx/scripts/xlsx_edit.py +269 -0
- package/built-in-skills/office-artifacts/references/xlsx/scripts/xlsx_read.py +160 -0
- package/built-in-skills/office-artifacts/references/xlsx/scripts/xlsx_recalc.py +111 -0
- package/built-in-skills/office-artifacts/references/xlsx/scripts/xlsx_restructure.py +418 -0
- package/built-in-skills/office-artifacts/references/xlsx/scripts/xlsx_to_csv.py +69 -0
- package/built-in-skills/office-artifacts/references/xlsx/tests/test_xlsx_skill.py +542 -0
- package/built-in-skills/office-artifacts/tests/test_resource_regressions.py +272 -0
- package/built-in-skills/persona-generator/SKILL.md +9 -9
- package/built-in-skills/pkf-svg/SKILL.md +5 -0
- package/built-in-skills/pkf-svg/references/architecture-diagram/GUIDE.md +148 -0
- package/built-in-skills/pkf-svg/references/architecture-diagram/LICENSE +21 -0
- package/built-in-skills/pkf-svg/references/architecture-diagram/LICENSE.hermes +21 -0
- package/built-in-skills/pkf-svg/references/architecture-diagram/PROVENANCE.md +7 -0
- package/built-in-skills/pkf-svg/references/architecture-diagram/templates/template.html +345 -0
- package/built-in-skills/pkf-writing/SKILL.md +36 -14
- package/built-in-skills/prismer-airtable/LICENSE +21 -0
- package/built-in-skills/prismer-airtable/NOTICE.md +11 -0
- package/built-in-skills/prismer-airtable/SKILL.md +248 -0
- package/built-in-skills/prismer-airtable/scripts/airtable_client.py +76 -0
- package/built-in-skills/prismer-apple-notes/LICENSE +21 -0
- package/built-in-skills/prismer-apple-notes/NOTICE.md +17 -0
- package/built-in-skills/prismer-apple-notes/SKILL.md +118 -0
- package/built-in-skills/prismer-apple-notes/scripts/readiness.py +47 -0
- package/built-in-skills/prismer-apple-reminders/LICENSE +21 -0
- package/built-in-skills/prismer-apple-reminders/NOTICE.md +17 -0
- package/built-in-skills/prismer-apple-reminders/SKILL.md +155 -0
- package/built-in-skills/prismer-apple-reminders/scripts/readiness.py +47 -0
- package/built-in-skills/prismer-ascii-video/LICENSE +21 -0
- package/built-in-skills/prismer-ascii-video/LICENSE.hermes +21 -0
- package/built-in-skills/prismer-ascii-video/PROVENANCE.md +7 -0
- package/built-in-skills/prismer-ascii-video/README.md +290 -0
- package/built-in-skills/prismer-ascii-video/SKILL.md +252 -0
- package/built-in-skills/prismer-ascii-video/provenance/category-DESCRIPTION.md +3 -0
- package/built-in-skills/prismer-ascii-video/references/architecture.md +807 -0
- package/built-in-skills/prismer-ascii-video/references/composition.md +900 -0
- package/built-in-skills/prismer-ascii-video/references/effects.md +1877 -0
- package/built-in-skills/prismer-ascii-video/references/inputs.md +693 -0
- package/built-in-skills/prismer-ascii-video/references/optimization.md +688 -0
- package/built-in-skills/prismer-ascii-video/references/scenes.md +1018 -0
- package/built-in-skills/prismer-ascii-video/references/shaders.md +1408 -0
- package/built-in-skills/prismer-ascii-video/references/troubleshooting.md +360 -0
- package/built-in-skills/prismer-baoyu-infographic/LICENSE +21 -0
- package/built-in-skills/prismer-baoyu-infographic/LICENSE.hermes +21 -0
- package/built-in-skills/prismer-baoyu-infographic/LICENSE.origin +21 -0
- package/built-in-skills/prismer-baoyu-infographic/PORT_NOTES.md +37 -0
- package/built-in-skills/prismer-baoyu-infographic/PROVENANCE.md +7 -0
- package/built-in-skills/prismer-baoyu-infographic/SKILL.md +240 -0
- package/built-in-skills/prismer-baoyu-infographic/references/analysis-framework.md +182 -0
- package/built-in-skills/prismer-baoyu-infographic/references/base-prompt.md +43 -0
- package/built-in-skills/prismer-baoyu-infographic/references/layouts/bento-grid.md +41 -0
- package/built-in-skills/prismer-baoyu-infographic/references/layouts/binary-comparison.md +48 -0
- package/built-in-skills/prismer-baoyu-infographic/references/layouts/bridge.md +41 -0
- package/built-in-skills/prismer-baoyu-infographic/references/layouts/circular-flow.md +41 -0
- package/built-in-skills/prismer-baoyu-infographic/references/layouts/comic-strip.md +41 -0
- package/built-in-skills/prismer-baoyu-infographic/references/layouts/comparison-matrix.md +41 -0
- package/built-in-skills/prismer-baoyu-infographic/references/layouts/dashboard.md +41 -0
- package/built-in-skills/prismer-baoyu-infographic/references/layouts/dense-modules.md +72 -0
- package/built-in-skills/prismer-baoyu-infographic/references/layouts/funnel.md +41 -0
- package/built-in-skills/prismer-baoyu-infographic/references/layouts/hierarchical-layers.md +48 -0
- package/built-in-skills/prismer-baoyu-infographic/references/layouts/hub-spoke.md +41 -0
- package/built-in-skills/prismer-baoyu-infographic/references/layouts/iceberg.md +41 -0
- package/built-in-skills/prismer-baoyu-infographic/references/layouts/isometric-map.md +41 -0
- package/built-in-skills/prismer-baoyu-infographic/references/layouts/jigsaw.md +41 -0
- package/built-in-skills/prismer-baoyu-infographic/references/layouts/linear-progression.md +48 -0
- package/built-in-skills/prismer-baoyu-infographic/references/layouts/periodic-table.md +41 -0
- package/built-in-skills/prismer-baoyu-infographic/references/layouts/story-mountain.md +41 -0
- package/built-in-skills/prismer-baoyu-infographic/references/layouts/structural-breakdown.md +48 -0
- package/built-in-skills/prismer-baoyu-infographic/references/layouts/tree-branching.md +41 -0
- package/built-in-skills/prismer-baoyu-infographic/references/layouts/venn-diagram.md +41 -0
- package/built-in-skills/prismer-baoyu-infographic/references/layouts/winding-roadmap.md +41 -0
- package/built-in-skills/prismer-baoyu-infographic/references/structured-content-template.md +244 -0
- package/built-in-skills/prismer-baoyu-infographic/references/styles/aged-academia.md +36 -0
- package/built-in-skills/prismer-baoyu-infographic/references/styles/bold-graphic.md +36 -0
- package/built-in-skills/prismer-baoyu-infographic/references/styles/chalkboard.md +61 -0
- package/built-in-skills/prismer-baoyu-infographic/references/styles/claymation.md +29 -0
- package/built-in-skills/prismer-baoyu-infographic/references/styles/corporate-memphis.md +29 -0
- package/built-in-skills/prismer-baoyu-infographic/references/styles/craft-handmade.md +44 -0
- package/built-in-skills/prismer-baoyu-infographic/references/styles/cyberpunk-neon.md +29 -0
- package/built-in-skills/prismer-baoyu-infographic/references/styles/hand-drawn-edu.md +63 -0
- package/built-in-skills/prismer-baoyu-infographic/references/styles/ikea-manual.md +29 -0
- package/built-in-skills/prismer-baoyu-infographic/references/styles/kawaii.md +29 -0
- package/built-in-skills/prismer-baoyu-infographic/references/styles/knolling.md +29 -0
- package/built-in-skills/prismer-baoyu-infographic/references/styles/lego-brick.md +29 -0
- package/built-in-skills/prismer-baoyu-infographic/references/styles/morandi-journal.md +60 -0
- package/built-in-skills/prismer-baoyu-infographic/references/styles/origami.md +29 -0
- package/built-in-skills/prismer-baoyu-infographic/references/styles/pixel-art.md +29 -0
- package/built-in-skills/prismer-baoyu-infographic/references/styles/pop-laboratory.md +48 -0
- package/built-in-skills/prismer-baoyu-infographic/references/styles/retro-pop-grid.md +47 -0
- package/built-in-skills/prismer-baoyu-infographic/references/styles/storybook-watercolor.md +29 -0
- package/built-in-skills/prismer-baoyu-infographic/references/styles/subway-map.md +29 -0
- package/built-in-skills/prismer-baoyu-infographic/references/styles/technical-schematic.md +36 -0
- package/built-in-skills/prismer-baoyu-infographic/references/styles/ui-wireframe.md +29 -0
- package/built-in-skills/prismer-blocked-page-recovery/LICENSE +21 -0
- package/built-in-skills/prismer-blocked-page-recovery/NOTICE.md +17 -0
- package/built-in-skills/prismer-blocked-page-recovery/SKILL.md +158 -0
- package/built-in-skills/prismer-blocked-page-recovery/scripts/recover_page.py +311 -0
- package/built-in-skills/prismer-box/LICENSE +21 -0
- package/built-in-skills/prismer-box/NOTICE.md +11 -0
- package/built-in-skills/prismer-box/SKILL.md +147 -0
- package/built-in-skills/prismer-box/references/bulk-operations.md +43 -0
- package/built-in-skills/prismer-box/references/cli-guide.md +133 -0
- package/built-in-skills/prismer-box/references/content-workflows.md +86 -0
- package/built-in-skills/prismer-box/references/hubs.md +77 -0
- package/built-in-skills/prismer-box/references/oauth-setup.md +92 -0
- package/built-in-skills/prismer-box/references/rest-api.md +37 -0
- package/built-in-skills/prismer-box/references/sdk-development.md +85 -0
- package/built-in-skills/prismer-box/references/search-and-ai.md +147 -0
- package/built-in-skills/prismer-box/references/troubleshooting.md +33 -0
- package/built-in-skills/prismer-box/references/webhooks-and-events.md +43 -0
- package/built-in-skills/prismer-codebase-inspection/LICENSE +21 -0
- package/built-in-skills/prismer-codebase-inspection/NOTICE.md +17 -0
- package/built-in-skills/prismer-codebase-inspection/SKILL.md +141 -0
- package/built-in-skills/prismer-computer-use/LICENSE +21 -0
- package/built-in-skills/prismer-computer-use/NOTICE.md +17 -0
- package/built-in-skills/prismer-computer-use/SKILL.md +372 -0
- package/built-in-skills/prismer-design-md/LICENSE +21 -0
- package/built-in-skills/prismer-design-md/LICENSE.hermes +21 -0
- package/built-in-skills/prismer-design-md/PROVENANCE.md +7 -0
- package/built-in-skills/prismer-design-md/SKILL.md +227 -0
- package/built-in-skills/prismer-design-md/templates/starter.md +99 -0
- package/built-in-skills/prismer-email-inbox-triage/LICENSE +21 -0
- package/built-in-skills/prismer-email-inbox-triage/NOTICE.md +11 -0
- package/built-in-skills/prismer-email-inbox-triage/SKILL.md +116 -0
- package/built-in-skills/prismer-findmy/LICENSE +21 -0
- package/built-in-skills/prismer-findmy/NOTICE.md +17 -0
- package/built-in-skills/prismer-findmy/SKILL.md +150 -0
- package/built-in-skills/prismer-findmy/scripts/readiness.py +47 -0
- package/built-in-skills/prismer-gif-search/LICENSE +21 -0
- package/built-in-skills/prismer-gif-search/LICENSE.hermes +21 -0
- package/built-in-skills/prismer-gif-search/PROVENANCE.md +7 -0
- package/built-in-skills/prismer-gif-search/SKILL.md +97 -0
- package/built-in-skills/prismer-gif-search/scripts/tenor.py +81 -0
- package/built-in-skills/prismer-github/LICENSE +21 -0
- package/built-in-skills/prismer-github/NOTICE.md +17 -0
- package/built-in-skills/prismer-github/SKILL.md +74 -0
- package/built-in-skills/prismer-github/references/auth.md +91 -0
- package/built-in-skills/prismer-github/references/ci-troubleshooting.md +193 -0
- package/built-in-skills/prismer-github/references/code-review.md +465 -0
- package/built-in-skills/prismer-github/references/conventional-commits.md +81 -0
- package/built-in-skills/prismer-github/references/github-api-cheatsheet.md +177 -0
- package/built-in-skills/prismer-github/references/issue-to-pr.md +74 -0
- package/built-in-skills/prismer-github/references/issues.md +336 -0
- package/built-in-skills/prismer-github/references/pr-workflow.md +346 -0
- package/built-in-skills/prismer-github/references/repo-management.md +484 -0
- package/built-in-skills/prismer-github/references/review-output-template.md +84 -0
- package/built-in-skills/prismer-github/scripts/ensure-gh.py +132 -0
- package/built-in-skills/prismer-github/scripts/gh-env.sh +25 -0
- package/built-in-skills/prismer-github/scripts/git-credential-token.py +68 -0
- package/built-in-skills/prismer-github/scripts/github-api.py +71 -0
- package/built-in-skills/prismer-github/scripts/github-context.py +28 -0
- package/built-in-skills/prismer-github/templates/bug-report.md +35 -0
- package/built-in-skills/prismer-github/templates/feature-request.md +31 -0
- package/built-in-skills/prismer-github/templates/pr-body-bugfix.md +35 -0
- package/built-in-skills/prismer-github/templates/pr-body-feature.md +33 -0
- package/built-in-skills/prismer-google-workspace/LICENSE +21 -0
- package/built-in-skills/prismer-google-workspace/NOTICE.md +11 -0
- package/built-in-skills/prismer-google-workspace/SKILL.md +369 -0
- package/built-in-skills/prismer-google-workspace/references/daily-brief.md +65 -0
- package/built-in-skills/prismer-google-workspace/references/gmail-search-syntax.md +63 -0
- package/built-in-skills/prismer-google-workspace/scripts/_hermes_home.py +17 -0
- package/built-in-skills/prismer-google-workspace/scripts/_private_state.py +39 -0
- package/built-in-skills/prismer-google-workspace/scripts/google_api.py +1339 -0
- package/built-in-skills/prismer-google-workspace/scripts/gws_bridge.py +121 -0
- package/built-in-skills/prismer-google-workspace/scripts/setup.py +563 -0
- package/built-in-skills/prismer-google-workspace/tests/test_productivity_regressions.py +214 -0
- package/built-in-skills/prismer-hermes-agent/LICENSE +21 -0
- package/built-in-skills/prismer-hermes-agent/NOTICE.md +17 -0
- package/built-in-skills/prismer-hermes-agent/SKILL.md +247 -0
- package/built-in-skills/prismer-hermes-agent/references/background-systems.md +108 -0
- package/built-in-skills/prismer-hermes-agent/references/cli-reference.md +158 -0
- package/built-in-skills/prismer-hermes-agent/references/configuration.md +96 -0
- package/built-in-skills/prismer-hermes-agent/references/contributor-guide.md +151 -0
- package/built-in-skills/prismer-hermes-agent/references/delegate-task-concurrency-diagnosis.md +47 -0
- package/built-in-skills/prismer-hermes-agent/references/desktop-plugins.md +215 -0
- package/built-in-skills/prismer-hermes-agent/references/native-mcp.md +351 -0
- package/built-in-skills/prismer-hermes-agent/references/petdex.md +82 -0
- package/built-in-skills/prismer-hermes-agent/references/portal-auth-for-third-party-apps.md +135 -0
- package/built-in-skills/prismer-hermes-agent/references/project-context-files.md +55 -0
- package/built-in-skills/prismer-hermes-agent/references/providers-and-models.md +81 -0
- package/built-in-skills/prismer-hermes-agent/references/security-privacy.md +73 -0
- package/built-in-skills/prismer-hermes-agent/references/slash-commands.md +119 -0
- package/built-in-skills/prismer-hermes-agent/references/themes.md +134 -0
- package/built-in-skills/prismer-hermes-agent/references/troubleshooting.md +87 -0
- package/built-in-skills/prismer-hermes-agent/references/tui-widgets.md +144 -0
- package/built-in-skills/prismer-hermes-agent/references/webhooks.md +219 -0
- package/built-in-skills/prismer-hermes-agent/references/windows-quirks.md +64 -0
- package/built-in-skills/prismer-hermes-agent/templates/clock.mjs +51 -0
- package/built-in-skills/prismer-hermes-agent/templates/plugin.js +97 -0
- package/built-in-skills/prismer-hermes-agent/templates/skin.yaml +49 -0
- package/built-in-skills/prismer-himalaya/LICENSE +21 -0
- package/built-in-skills/prismer-himalaya/NOTICE.md +11 -0
- package/built-in-skills/prismer-himalaya/SKILL.md +340 -0
- package/built-in-skills/prismer-himalaya/references/configuration.md +227 -0
- package/built-in-skills/prismer-himalaya/references/message-composition.md +206 -0
- package/built-in-skills/prismer-himalaya/scripts/compose_draft.py +48 -0
- package/built-in-skills/prismer-im-collab/SKILL.md +1 -1
- package/built-in-skills/prismer-imessage/LICENSE +21 -0
- package/built-in-skills/prismer-imessage/NOTICE.md +17 -0
- package/built-in-skills/prismer-imessage/SKILL.md +128 -0
- package/built-in-skills/prismer-imessage/scripts/readiness.py +47 -0
- package/built-in-skills/prismer-manim-video/LICENSE +21 -0
- package/built-in-skills/prismer-manim-video/LICENSE.hermes +21 -0
- package/built-in-skills/prismer-manim-video/PROVENANCE.md +7 -0
- package/built-in-skills/prismer-manim-video/README.md +23 -0
- package/built-in-skills/prismer-manim-video/SKILL.md +279 -0
- package/built-in-skills/prismer-manim-video/references/animation-design-thinking.md +161 -0
- package/built-in-skills/prismer-manim-video/references/animations.md +282 -0
- package/built-in-skills/prismer-manim-video/references/camera-and-3d.md +135 -0
- package/built-in-skills/prismer-manim-video/references/decorations.md +202 -0
- package/built-in-skills/prismer-manim-video/references/equations.md +216 -0
- package/built-in-skills/prismer-manim-video/references/graphs-and-data.md +163 -0
- package/built-in-skills/prismer-manim-video/references/mobjects.md +333 -0
- package/built-in-skills/prismer-manim-video/references/paper-explainer.md +255 -0
- package/built-in-skills/prismer-manim-video/references/production-quality.md +190 -0
- package/built-in-skills/prismer-manim-video/references/rendering.md +187 -0
- package/built-in-skills/prismer-manim-video/references/scene-planning.md +118 -0
- package/built-in-skills/prismer-manim-video/references/troubleshooting.md +135 -0
- package/built-in-skills/prismer-manim-video/references/updaters-and-trackers.md +260 -0
- package/built-in-skills/prismer-manim-video/references/visual-design.md +124 -0
- package/built-in-skills/prismer-manim-video/scripts/setup.sh +15 -0
- package/built-in-skills/prismer-maps/LICENSE +21 -0
- package/built-in-skills/prismer-maps/NOTICE.md +11 -0
- package/built-in-skills/prismer-maps/SKILL.md +240 -0
- package/built-in-skills/prismer-maps/scripts/maps_client.py +1324 -0
- package/built-in-skills/prismer-node-inspect-debugger/LICENSE +21 -0
- package/built-in-skills/prismer-node-inspect-debugger/NOTICE.md +17 -0
- package/built-in-skills/prismer-node-inspect-debugger/SKILL.md +347 -0
- package/built-in-skills/prismer-notion/LICENSE +21 -0
- package/built-in-skills/prismer-notion/NOTICE.md +11 -0
- package/built-in-skills/prismer-notion/SKILL.md +495 -0
- package/built-in-skills/prismer-notion/references/block-types.md +112 -0
- package/built-in-skills/prismer-obsidian/LICENSE +21 -0
- package/built-in-skills/prismer-obsidian/LICENSE.hermes +21 -0
- package/built-in-skills/prismer-obsidian/PROVENANCE.md +7 -0
- package/built-in-skills/prismer-obsidian/SKILL.md +80 -0
- package/built-in-skills/prismer-obsidian/provenance/category-DESCRIPTION.md +3 -0
- package/built-in-skills/prismer-obsidian/scripts/write_note.py +84 -0
- package/built-in-skills/prismer-p5js/LICENSE +21 -0
- package/built-in-skills/prismer-p5js/LICENSE.hermes +21 -0
- package/built-in-skills/prismer-p5js/PROVENANCE.md +7 -0
- package/built-in-skills/prismer-p5js/README.md +64 -0
- package/built-in-skills/prismer-p5js/SKILL.md +574 -0
- package/built-in-skills/prismer-p5js/references/animation.md +439 -0
- package/built-in-skills/prismer-p5js/references/color-systems.md +355 -0
- package/built-in-skills/prismer-p5js/references/core-api.md +410 -0
- package/built-in-skills/prismer-p5js/references/export-pipeline.md +534 -0
- package/built-in-skills/prismer-p5js/references/interaction.md +398 -0
- package/built-in-skills/prismer-p5js/references/shapes-and-geometry.md +300 -0
- package/built-in-skills/prismer-p5js/references/troubleshooting.md +532 -0
- package/built-in-skills/prismer-p5js/references/typography.md +302 -0
- package/built-in-skills/prismer-p5js/references/visual-effects.md +905 -0
- package/built-in-skills/prismer-p5js/references/webgl-and-3d.md +423 -0
- package/built-in-skills/prismer-p5js/scripts/export-frames.js +91 -0
- package/built-in-skills/prismer-p5js/scripts/render.sh +113 -0
- package/built-in-skills/prismer-p5js/scripts/serve.sh +25 -0
- package/built-in-skills/prismer-p5js/scripts/setup.sh +87 -0
- package/built-in-skills/prismer-p5js/templates/viewer.html +401 -0
- package/built-in-skills/prismer-popular-web-designs/LICENSE +21 -0
- package/built-in-skills/prismer-popular-web-designs/LICENSE.hermes +21 -0
- package/built-in-skills/prismer-popular-web-designs/LICENSE.origin +21 -0
- package/built-in-skills/prismer-popular-web-designs/PROVENANCE.md +7 -0
- package/built-in-skills/prismer-popular-web-designs/SKILL.md +218 -0
- package/built-in-skills/prismer-popular-web-designs/templates/airbnb.md +259 -0
- package/built-in-skills/prismer-popular-web-designs/templates/airtable.md +102 -0
- package/built-in-skills/prismer-popular-web-designs/templates/apple.md +326 -0
- package/built-in-skills/prismer-popular-web-designs/templates/bmw.md +193 -0
- package/built-in-skills/prismer-popular-web-designs/templates/cal.md +272 -0
- package/built-in-skills/prismer-popular-web-designs/templates/claude.md +325 -0
- package/built-in-skills/prismer-popular-web-designs/templates/clay.md +317 -0
- package/built-in-skills/prismer-popular-web-designs/templates/clickhouse.md +294 -0
- package/built-in-skills/prismer-popular-web-designs/templates/cohere.md +279 -0
- package/built-in-skills/prismer-popular-web-designs/templates/coinbase.md +142 -0
- package/built-in-skills/prismer-popular-web-designs/templates/composio.md +320 -0
- package/built-in-skills/prismer-popular-web-designs/templates/cursor.md +322 -0
- package/built-in-skills/prismer-popular-web-designs/templates/elevenlabs.md +278 -0
- package/built-in-skills/prismer-popular-web-designs/templates/expo.md +294 -0
- package/built-in-skills/prismer-popular-web-designs/templates/figma.md +233 -0
- package/built-in-skills/prismer-popular-web-designs/templates/framer.md +259 -0
- package/built-in-skills/prismer-popular-web-designs/templates/hashicorp.md +291 -0
- package/built-in-skills/prismer-popular-web-designs/templates/ibm.md +345 -0
- package/built-in-skills/prismer-popular-web-designs/templates/intercom.md +159 -0
- package/built-in-skills/prismer-popular-web-designs/templates/kraken.md +138 -0
- package/built-in-skills/prismer-popular-web-designs/templates/linear.app.md +380 -0
- package/built-in-skills/prismer-popular-web-designs/templates/lovable.md +311 -0
- package/built-in-skills/prismer-popular-web-designs/templates/minimax.md +270 -0
- package/built-in-skills/prismer-popular-web-designs/templates/mintlify.md +339 -0
- package/built-in-skills/prismer-popular-web-designs/templates/miro.md +121 -0
- package/built-in-skills/prismer-popular-web-designs/templates/mistral.ai.md +274 -0
- package/built-in-skills/prismer-popular-web-designs/templates/mongodb.md +279 -0
- package/built-in-skills/prismer-popular-web-designs/templates/notion.md +322 -0
- package/built-in-skills/prismer-popular-web-designs/templates/nvidia.md +306 -0
- package/built-in-skills/prismer-popular-web-designs/templates/ollama.md +280 -0
- package/built-in-skills/prismer-popular-web-designs/templates/opencode.ai.md +294 -0
- package/built-in-skills/prismer-popular-web-designs/templates/pinterest.md +243 -0
- package/built-in-skills/prismer-popular-web-designs/templates/posthog.md +269 -0
- package/built-in-skills/prismer-popular-web-designs/templates/raycast.md +281 -0
- package/built-in-skills/prismer-popular-web-designs/templates/replicate.md +274 -0
- package/built-in-skills/prismer-popular-web-designs/templates/resend.md +316 -0
- package/built-in-skills/prismer-popular-web-designs/templates/revolut.md +198 -0
- package/built-in-skills/prismer-popular-web-designs/templates/runwayml.md +257 -0
- package/built-in-skills/prismer-popular-web-designs/templates/sanity.md +370 -0
- package/built-in-skills/prismer-popular-web-designs/templates/sentry.md +275 -0
- package/built-in-skills/prismer-popular-web-designs/templates/spacex.md +207 -0
- package/built-in-skills/prismer-popular-web-designs/templates/spotify.md +259 -0
- package/built-in-skills/prismer-popular-web-designs/templates/stripe.md +335 -0
- package/built-in-skills/prismer-popular-web-designs/templates/supabase.md +268 -0
- package/built-in-skills/prismer-popular-web-designs/templates/superhuman.md +265 -0
- package/built-in-skills/prismer-popular-web-designs/templates/together.ai.md +276 -0
- package/built-in-skills/prismer-popular-web-designs/templates/uber.md +308 -0
- package/built-in-skills/prismer-popular-web-designs/templates/vercel.md +323 -0
- package/built-in-skills/prismer-popular-web-designs/templates/voltagent.md +336 -0
- package/built-in-skills/prismer-popular-web-designs/templates/warp.md +266 -0
- package/built-in-skills/prismer-popular-web-designs/templates/webflow.md +105 -0
- package/built-in-skills/prismer-popular-web-designs/templates/wise.md +186 -0
- package/built-in-skills/prismer-popular-web-designs/templates/x.ai.md +270 -0
- package/built-in-skills/prismer-popular-web-designs/templates/zapier.md +341 -0
- package/built-in-skills/prismer-product-price-monitor/LICENSE +21 -0
- package/built-in-skills/prismer-product-price-monitor/NOTICE.md +11 -0
- package/built-in-skills/prismer-product-price-monitor/SKILL.md +97 -0
- package/built-in-skills/prismer-product-price-monitor/scripts/watch_state.py +116 -0
- package/built-in-skills/prismer-python-debugpy/LICENSE +21 -0
- package/built-in-skills/prismer-python-debugpy/NOTICE.md +17 -0
- package/built-in-skills/prismer-python-debugpy/SKILL.md +377 -0
- package/built-in-skills/prismer-python-debugpy/scripts/dap_client.py +68 -0
- package/built-in-skills/prismer-songsee/LICENSE +21 -0
- package/built-in-skills/prismer-songsee/LICENSE.hermes +21 -0
- package/built-in-skills/prismer-songsee/PROVENANCE.md +7 -0
- package/built-in-skills/prismer-songsee/SKILL.md +91 -0
- package/built-in-skills/prismer-songwriting-and-ai-music/LICENSE +21 -0
- package/built-in-skills/prismer-songwriting-and-ai-music/LICENSE.hermes +21 -0
- package/built-in-skills/prismer-songwriting-and-ai-music/PROVENANCE.md +7 -0
- package/built-in-skills/prismer-songwriting-and-ai-music/SKILL.md +317 -0
- package/built-in-skills/prismer-spike/LICENSE +21 -0
- package/built-in-skills/prismer-spike/LICENSE.gsd +21 -0
- package/built-in-skills/prismer-spike/NOTICE.md +17 -0
- package/built-in-skills/prismer-spike/SKILL.md +212 -0
- package/built-in-skills/prismer-teams-meeting-pipeline/LICENSE +21 -0
- package/built-in-skills/prismer-teams-meeting-pipeline/NOTICE.md +11 -0
- package/built-in-skills/prismer-teams-meeting-pipeline/SKILL.md +156 -0
- package/built-in-skills/prismer-xurl/LICENSE +21 -0
- package/built-in-skills/prismer-xurl/LICENSE.hermes +21 -0
- package/built-in-skills/prismer-xurl/PROVENANCE.md +7 -0
- package/built-in-skills/prismer-xurl/SKILL.md +444 -0
- package/built-in-skills/prismer-xurl/provenance/category-DESCRIPTION.md +3 -0
- package/built-in-skills/prismer-youtube-content/LICENSE +21 -0
- package/built-in-skills/prismer-youtube-content/LICENSE.hermes +21 -0
- package/built-in-skills/prismer-youtube-content/PROVENANCE.md +7 -0
- package/built-in-skills/prismer-youtube-content/SKILL.md +86 -0
- package/built-in-skills/prismer-youtube-content/provenance/category-DESCRIPTION.md +3 -0
- package/built-in-skills/prismer-youtube-content/references/output-formats.md +56 -0
- package/built-in-skills/prismer-youtube-content/scripts/fetch_transcript.py +146 -0
- package/built-in-skills/research-arxiv/LICENSE +21 -0
- package/built-in-skills/research-arxiv/NOTICE.md +4 -0
- package/built-in-skills/research-arxiv/SKILL.md +263 -0
- package/built-in-skills/research-arxiv/scripts/search_arxiv.py +111 -0
- package/built-in-skills/role-builder/SKILL.md +7 -1
- package/built-in-skills/role-builder/scripts/author-role.mjs +23 -7
- package/built-in-skills/role-builder/scripts/ingest-role.mjs +15 -117
- package/built-in-skills/role-builder/scripts/instantiate-and-run.mjs +15 -1
- package/built-in-skills/role-builder/scripts/operation-harness.mjs +6 -4
- package/built-in-skills/skill-creator/LICENSE.prismer +21 -0
- package/built-in-skills/skill-creator/NOTICE.md +18 -0
- package/built-in-skills/skill-creator/SKILL.md +20 -1
- package/built-in-skills/skill-creator/eval-viewer/generate_review.py +20 -31
- package/built-in-skills/skill-creator/eval-viewer/viewer.html +35 -23
- package/built-in-skills/skill-creator/references/hermes-agent-skill-authoring/GUIDE.md +220 -0
- package/built-in-skills/skill-creator/references/hermes-agent-skill-authoring/LICENSE +21 -0
- package/built-in-skills/{skill-authoring/SKILL.md → skill-creator/references/skill-authoring/GUIDE.md} +1 -1
- package/built-in-skills/{skill-builder/SKILL.md → skill-creator/references/skill-builder/GUIDE.md} +8 -12
- package/built-in-skills/skill-creator/references/skill-builder/scripts/ingest.mjs +93 -0
- package/built-in-skills/skill-creator/scripts/aggregate_benchmark.py +3 -2
- package/built-in-skills/skill-creator/scripts/import-library.mjs +30 -7
- package/built-in-skills/skill-creator/scripts/improve_description.py +14 -16
- package/built-in-skills/skill-creator/scripts/package_skill.py +16 -9
- package/built-in-skills/skill-creator/scripts/quick_validate.py +22 -5
- package/built-in-skills/skill-creator/scripts/run_eval.py +63 -144
- package/built-in-skills/skill-creator/scripts/run_loop.py +24 -16
- package/built-in-skills/slack-gif-creator/core/gif_builder.py +13 -2
- package/built-in-skills/slack-gif-creator/core/validators.py +17 -7
- package/built-in-skills/tasks/SKILL.md +2 -2
- package/built-in-skills/tdd/SKILL.md +7 -0
- package/built-in-skills/tdd/references/test-driven-development/GUIDE.md +356 -0
- package/built-in-skills/tdd/references/test-driven-development/LICENSE +21 -0
- package/built-in-skills/tdd/references/test-driven-development/LICENSE.superpowers +21 -0
- package/built-in-skills/tdd/references/test-driven-development/NOTICE.md +37 -0
- package/built-in-skills/team/SKILL.md +1 -1
- package/built-in-skills/web-artifacts-builder/SKILL.md +3 -3
- package/built-in-skills/web-artifacts-builder/scripts/bundle-artifact.sh +9 -7
- package/built-in-skills/web-artifacts-builder/scripts/init-artifact.sh +28 -55
- package/built-in-skills/webapp-qa/LICENSE +21 -0
- package/built-in-skills/webapp-qa/NOTICE.md +37 -0
- package/built-in-skills/webapp-qa/SKILL.md +41 -0
- package/built-in-skills/webapp-qa/references/dogfood/GUIDE.md +161 -0
- package/built-in-skills/webapp-qa/references/issue-taxonomy.md +109 -0
- package/built-in-skills/webapp-qa/templates/dogfood-report-template.md +86 -0
- package/built-in-skills/webapp-testing/SKILL.md +9 -2
- package/built-in-skills/webapp-testing/examples/console_logging.py +10 -4
- package/built-in-skills/webapp-testing/examples/element_discovery.py +11 -4
- package/built-in-skills/webapp-testing/examples/static_html_automation.py +14 -9
- package/built-in-skills/webapp-testing/scripts/with_server.py +34 -10
- package/built-in-skills/weekly-review/LICENSE +21 -0
- package/built-in-skills/weekly-review/NOTICE.md +21 -0
- package/built-in-skills/weekly-review/SKILL.md +49 -0
- package/components/eaas-pi-components.manifest.json +37 -0
- package/dist/cli.cjs +7079 -3327
- package/dist/cli.js +6706 -2936
- package/dist/index.cjs +7930 -3822
- package/dist/index.d.cts +484 -5
- package/dist/index.d.ts +484 -5
- package/dist/index.js +7181 -3064
- package/package.json +7 -2
- package/plugins/memory/prismer/__init__.py +4 -0
- package/plugins/memory/prismer/tool-schemas.generated.json +8 -0
- package/built-in-skills/skill-builder/scripts/ingest.mjs +0 -265
- package/built-in-skills/web-artifacts-builder/scripts/shadcn-components.tar.gz +0 -0
- /package/built-in-skills/{document-generation/SKILL.md → office-artifacts/references/document-generation/GUIDE.md} +0 -0
- /package/built-in-skills/{skill-authoring/skill.json → skill-creator/references/skill-authoring/draft-contract.json} +0 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 Nous Research
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# Resource provenance
|
|
2
|
+
|
|
3
|
+
Imported from hermes-agent skills/media/youtube-content at 1a1f4a59e252e1dc0137e7b2e7bcc8b0381d19c4.
|
|
4
|
+
|
|
5
|
+
Prismer receiver: prismer-youtube-content. Native replacement: youtube-content; this is not an alias. Preserve all source resources at their relative paths; merge packs live under references/youtube-content/. Source file hashes and content review: docs/bugfix223/audit-creative-media-coverage.json. Local corrections and remaining live acceptance: docs/bugfix223/implementation-creative.md.
|
|
6
|
+
|
|
7
|
+
LICENSE.hermes preserves Nous Research MIT terms. External libraries, fonts, services and media have separate licenses; no third-party binary assets were included.
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: prismer-youtube-content
|
|
3
|
+
scope: common
|
|
4
|
+
category: media
|
|
5
|
+
description: "YouTube transcripts to summaries, threads, blogs."
|
|
6
|
+
version: 1.0.0
|
|
7
|
+
author: Teknium (teknium1), Hermes Agent
|
|
8
|
+
license: MIT
|
|
9
|
+
platforms: [linux, macos, windows]
|
|
10
|
+
metadata:
|
|
11
|
+
nativeReplaces: [youtube-content]
|
|
12
|
+
hermes:
|
|
13
|
+
tags: [YouTube, Video, Transcripts, Media]
|
|
14
|
+
related_skills: []
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
# YouTube Content Tool
|
|
18
|
+
|
|
19
|
+
## When to use
|
|
20
|
+
|
|
21
|
+
Use when the user shares a YouTube URL or video link, asks to summarize a video, requests a transcript, or wants to extract and reformat content from any YouTube video. Transforms transcripts into structured content (chapters, summaries, threads, blog posts).
|
|
22
|
+
|
|
23
|
+
Extract transcripts from YouTube videos and convert them into useful formats.
|
|
24
|
+
|
|
25
|
+
## Setup
|
|
26
|
+
|
|
27
|
+
Use `uv` so the dependency is installed into the same task-local isolated environment
|
|
28
|
+
that runs the helper script:
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
uv pip install youtube-transcript-api==1.2.2
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
## Helper Script
|
|
35
|
+
|
|
36
|
+
`SKILL_DIR` is the directory containing this SKILL.md file. The script accepts any standard YouTube URL format, short links (youtu.be), shorts, embeds, live links, or a raw 11-character video ID.
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
# JSON output with metadata
|
|
40
|
+
uv run python SKILL_DIR/scripts/fetch_transcript.py "https://youtube.com/watch?v=VIDEO_ID"
|
|
41
|
+
|
|
42
|
+
# Plain text (good for piping into further processing)
|
|
43
|
+
uv run python SKILL_DIR/scripts/fetch_transcript.py "URL" --text-only
|
|
44
|
+
|
|
45
|
+
# With timestamps
|
|
46
|
+
uv run python SKILL_DIR/scripts/fetch_transcript.py "URL" --timestamps
|
|
47
|
+
|
|
48
|
+
# Specific language with fallback chain
|
|
49
|
+
uv run python SKILL_DIR/scripts/fetch_transcript.py "URL" --language tr,en
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
## Output Formats
|
|
53
|
+
|
|
54
|
+
After fetching the transcript, format it based on what the user asks for:
|
|
55
|
+
|
|
56
|
+
- **Chapters**: Group by topic shifts, output timestamped chapter list
|
|
57
|
+
- **Summary**: Concise 5-10 sentence overview of the entire video
|
|
58
|
+
- **Chapter summaries**: Chapters with a short paragraph summary for each
|
|
59
|
+
- **Thread**: Twitter/X thread format — numbered posts, each under 280 chars
|
|
60
|
+
- **Blog post**: Full article with title, sections, and key takeaways
|
|
61
|
+
- **Quotes**: Notable quotes with timestamps
|
|
62
|
+
|
|
63
|
+
### Example — Chapters Output
|
|
64
|
+
|
|
65
|
+
```
|
|
66
|
+
00:00 Introduction — host opens with the problem statement
|
|
67
|
+
03:45 Background — prior work and why existing solutions fall short
|
|
68
|
+
12:20 Core method — walkthrough of the proposed approach
|
|
69
|
+
24:10 Results — benchmark comparisons and key takeaways
|
|
70
|
+
31:55 Q&A — audience questions on scalability and next steps
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
## Workflow
|
|
74
|
+
|
|
75
|
+
1. **Fetch** the transcript using the helper script with `--text-only --timestamps` via `uv run python`.
|
|
76
|
+
2. **Validate**: confirm the output is non-empty and in the expected language. If empty, retry without `--language` to get any available transcript. If still empty, tell the user the video likely has transcripts disabled.
|
|
77
|
+
3. **Chunk if needed**: if the transcript exceeds ~50K characters, split into overlapping chunks (~40K with 2K overlap) and summarize each chunk before merging.
|
|
78
|
+
4. **Transform** into the requested output format. If the user did not specify a format, default to a summary.
|
|
79
|
+
5. **Verify**: re-read the transformed output to check for coherence, correct timestamps, and completeness before presenting.
|
|
80
|
+
|
|
81
|
+
## Error Handling
|
|
82
|
+
|
|
83
|
+
- **Transcript disabled**: tell the user; suggest they check if subtitles are available on the video page.
|
|
84
|
+
- **Private/unavailable video**: relay the error and ask the user to verify the URL.
|
|
85
|
+
- **No matching language**: retry without `--language` to fetch any available transcript, then note the actual language to the user.
|
|
86
|
+
- **Dependency missing**: run `uv pip install youtube-transcript-api==1.2.2` and retry.
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# Output Format Examples
|
|
2
|
+
|
|
3
|
+
## Chapters
|
|
4
|
+
|
|
5
|
+
```
|
|
6
|
+
00:00 Introduction
|
|
7
|
+
02:15 Background and motivation
|
|
8
|
+
05:30 Main approach
|
|
9
|
+
12:45 Results and evaluation
|
|
10
|
+
18:20 Limitations and future work
|
|
11
|
+
21:00 Q&A
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## Summary
|
|
15
|
+
|
|
16
|
+
A 5-10 sentence overview covering the video's main points, key arguments, and conclusions. Written in third person, present tense.
|
|
17
|
+
|
|
18
|
+
## Chapter Summaries
|
|
19
|
+
|
|
20
|
+
```
|
|
21
|
+
## 00:00 Introduction (2 min)
|
|
22
|
+
The speaker introduces the topic of X and explains why it matters for Y.
|
|
23
|
+
|
|
24
|
+
## 02:15 Background (3 min)
|
|
25
|
+
A review of prior work in the field, covering approaches A, B, and C.
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Thread (Twitter/X)
|
|
29
|
+
|
|
30
|
+
```
|
|
31
|
+
1/ Just watched an incredible talk on [topic]. Here are the key takeaways: 🧵
|
|
32
|
+
|
|
33
|
+
2/ First insight: [point]. This matters because [reason].
|
|
34
|
+
|
|
35
|
+
3/ The surprising part: [unexpected finding]. Most people assume [common belief], but the data shows otherwise.
|
|
36
|
+
|
|
37
|
+
4/ Practical takeaway: [actionable advice].
|
|
38
|
+
|
|
39
|
+
5/ Full video: [URL]
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## Blog Post
|
|
43
|
+
|
|
44
|
+
Full article with:
|
|
45
|
+
- Title
|
|
46
|
+
- Introduction paragraph
|
|
47
|
+
- H2 sections for each major topic
|
|
48
|
+
- Key quotes (with timestamps)
|
|
49
|
+
- Conclusion / takeaways
|
|
50
|
+
|
|
51
|
+
## Quotes
|
|
52
|
+
|
|
53
|
+
```
|
|
54
|
+
"The most important thing is not the model size, but the data quality." — 05:32
|
|
55
|
+
"We found that scaling past 70B parameters gave diminishing returns." — 12:18
|
|
56
|
+
```
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
"""
|
|
3
|
+
Fetch a YouTube video transcript and output it as structured JSON.
|
|
4
|
+
|
|
5
|
+
Usage:
|
|
6
|
+
uv run python3 fetch_transcript.py <url_or_video_id> [--language en,tr] [--timestamps]
|
|
7
|
+
|
|
8
|
+
Output (JSON):
|
|
9
|
+
{
|
|
10
|
+
"video_id": "...",
|
|
11
|
+
"language": "en",
|
|
12
|
+
"segments": [{"text": "...", "start": 0.0, "duration": 2.5}, ...],
|
|
13
|
+
"full_text": "complete transcript as plain text",
|
|
14
|
+
"timestamped_text": "00:00 first line\n00:05 second line\n..."
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
Install dependency: uv pip install youtube-transcript-api
|
|
18
|
+
"""
|
|
19
|
+
|
|
20
|
+
import argparse
|
|
21
|
+
import json
|
|
22
|
+
import re
|
|
23
|
+
import sys
|
|
24
|
+
import math
|
|
25
|
+
from urllib.parse import urlparse, parse_qs
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
def extract_video_id(url_or_id: str) -> str:
|
|
29
|
+
"""Extract the 11-character video ID from various YouTube URL formats."""
|
|
30
|
+
url_or_id = url_or_id.strip()
|
|
31
|
+
if re.fullmatch(r'[a-zA-Z0-9_-]{11}', url_or_id):
|
|
32
|
+
return url_or_id
|
|
33
|
+
url = urlparse(url_or_id)
|
|
34
|
+
if url.scheme not in ('https', 'http') or url.username or url.password:
|
|
35
|
+
raise ValueError('Expected a YouTube URL or exact 11-character video ID')
|
|
36
|
+
if url.hostname == 'youtu.be':
|
|
37
|
+
candidate = url.path.removeprefix('/')
|
|
38
|
+
elif url.hostname in ('youtube.com', 'www.youtube.com', 'm.youtube.com'):
|
|
39
|
+
parts = url.path.strip('/').split('/')
|
|
40
|
+
if url.path == '/watch':
|
|
41
|
+
ids = parse_qs(url.query).get('v', [])
|
|
42
|
+
candidate = ids[0] if len(ids) == 1 else ''
|
|
43
|
+
else:
|
|
44
|
+
candidate = parts[1] if len(parts) == 2 and parts[0] in ('shorts', 'embed', 'live') else ''
|
|
45
|
+
else:
|
|
46
|
+
raise ValueError('Unsupported video host')
|
|
47
|
+
if not re.fullmatch(r'[a-zA-Z0-9_-]{11}', candidate):
|
|
48
|
+
raise ValueError('Invalid video ID')
|
|
49
|
+
return candidate
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
def format_timestamp(seconds: float) -> str:
|
|
53
|
+
"""Convert seconds to HH:MM:SS or MM:SS format."""
|
|
54
|
+
total = int(seconds)
|
|
55
|
+
h, remainder = divmod(total, 3600)
|
|
56
|
+
m, s = divmod(remainder, 60)
|
|
57
|
+
if h > 0:
|
|
58
|
+
return f"{h}:{m:02d}:{s:02d}"
|
|
59
|
+
return f"{m}:{s:02d}"
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
def fetch_transcript(video_id: str, languages: list = None):
|
|
63
|
+
"""Fetch transcript segments from YouTube.
|
|
64
|
+
|
|
65
|
+
Returns transcript metadata and normalized source segments.
|
|
66
|
+
Compatible with youtube-transcript-api v1.x.
|
|
67
|
+
"""
|
|
68
|
+
try:
|
|
69
|
+
from youtube_transcript_api import YouTubeTranscriptApi
|
|
70
|
+
except ImportError:
|
|
71
|
+
print("Error: youtube-transcript-api not installed. Run: uv pip install youtube-transcript-api",
|
|
72
|
+
file=sys.stderr)
|
|
73
|
+
sys.exit(1)
|
|
74
|
+
|
|
75
|
+
api = YouTubeTranscriptApi()
|
|
76
|
+
result = api.fetch(video_id, languages=languages or ['en'])
|
|
77
|
+
|
|
78
|
+
# v1.x returns FetchedTranscriptSnippet objects; normalize to dicts
|
|
79
|
+
segments = [
|
|
80
|
+
{"text": seg.text, "start": seg.start, "duration": seg.duration}
|
|
81
|
+
for seg in result
|
|
82
|
+
]
|
|
83
|
+
if not segments or not any(seg['text'].strip() for seg in segments):
|
|
84
|
+
raise ValueError('No transcript content found')
|
|
85
|
+
for seg in segments:
|
|
86
|
+
if not all(isinstance(seg[k], (float, int)) and math.isfinite(seg[k]) and seg[k] >= 0
|
|
87
|
+
for k in ('start', 'duration')):
|
|
88
|
+
raise ValueError('Invalid transcript timing')
|
|
89
|
+
return {'segments': segments, 'language': result.language_code,
|
|
90
|
+
'is_generated': result.is_generated}
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
def main():
|
|
94
|
+
parser = argparse.ArgumentParser(description="Fetch YouTube transcript as JSON")
|
|
95
|
+
parser.add_argument("url", help="YouTube URL or video ID")
|
|
96
|
+
parser.add_argument("--language", "-l", default=None,
|
|
97
|
+
help="Comma-separated language codes (e.g. en,tr). Default: en")
|
|
98
|
+
parser.add_argument("--timestamps", "-t", action="store_true",
|
|
99
|
+
help="Include timestamped text in output")
|
|
100
|
+
parser.add_argument("--text-only", action="store_true",
|
|
101
|
+
help="Output plain text instead of JSON")
|
|
102
|
+
args = parser.parse_args()
|
|
103
|
+
|
|
104
|
+
languages = [l.strip() for l in args.language.split(",")] if args.language else None
|
|
105
|
+
|
|
106
|
+
try:
|
|
107
|
+
video_id = extract_video_id(args.url)
|
|
108
|
+
if languages is not None and not all(languages):
|
|
109
|
+
raise ValueError('Language codes cannot be empty')
|
|
110
|
+
transcript = fetch_transcript(video_id, languages)
|
|
111
|
+
segments = transcript['segments']
|
|
112
|
+
except Exception as e:
|
|
113
|
+
error_msg = str(e)
|
|
114
|
+
if "disabled" in error_msg.lower():
|
|
115
|
+
print(json.dumps({"error": "Transcripts are disabled for this video."}))
|
|
116
|
+
elif "no transcript" in error_msg.lower():
|
|
117
|
+
print(json.dumps({"error": "No transcript found. Try specifying a language with --language."}))
|
|
118
|
+
else:
|
|
119
|
+
print(json.dumps({"error": error_msg}))
|
|
120
|
+
sys.exit(1)
|
|
121
|
+
|
|
122
|
+
full_text = " ".join(seg["text"] for seg in segments)
|
|
123
|
+
timestamped = "\n".join(
|
|
124
|
+
f"{format_timestamp(seg['start'])} {seg['text']}" for seg in segments
|
|
125
|
+
)
|
|
126
|
+
|
|
127
|
+
if args.text_only:
|
|
128
|
+
print(timestamped if args.timestamps else full_text)
|
|
129
|
+
return
|
|
130
|
+
|
|
131
|
+
result = {
|
|
132
|
+
**transcript,
|
|
133
|
+
"video_id": video_id,
|
|
134
|
+
"source_url": f"https://www.youtube.com/watch?v={video_id}",
|
|
135
|
+
"segment_count": len(segments),
|
|
136
|
+
"duration": format_timestamp(max(s['start'] + s['duration'] for s in segments)),
|
|
137
|
+
"full_text": full_text,
|
|
138
|
+
}
|
|
139
|
+
if args.timestamps:
|
|
140
|
+
result["timestamped_text"] = timestamped
|
|
141
|
+
|
|
142
|
+
print(json.dumps(result, ensure_ascii=False, indent=2))
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
if __name__ == "__main__":
|
|
146
|
+
main()
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 Nous Research
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
Adapted from Nous Research Hermes Agent skills/research/arxiv,
|
|
2
|
+
revision 1a1f4a59e252e1dc0137e7b2e7bcc8b0381d19c4 (MIT; see LICENSE).
|
|
3
|
+
Prismer changes: version-preserving Atom parser, bounded HTTP and CLI validation,
|
|
4
|
+
structured output, task delivery and citation integration.
|
|
@@ -0,0 +1,263 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: research-arxiv
|
|
3
|
+
scope: common
|
|
4
|
+
category: research
|
|
5
|
+
description: "Search arXiv papers by keyword, author, category, or ID."
|
|
6
|
+
version: 1.0.0
|
|
7
|
+
author: Hermes Agent
|
|
8
|
+
license: MIT
|
|
9
|
+
platforms: [linux, macos, windows]
|
|
10
|
+
metadata:
|
|
11
|
+
nativeReplaces: [arxiv]
|
|
12
|
+
upstream: Hermes Agent skills/research/arxiv at 1a1f4a59e2
|
|
13
|
+
hermes:
|
|
14
|
+
tags: [Research, Arxiv, Papers, Academic, Science, API]
|
|
15
|
+
related_skills: [office-artifacts, evidence-citations]
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
# arXiv Research
|
|
19
|
+
|
|
20
|
+
Search and retrieve academic papers from arXiv via their REST API. No API key.
|
|
21
|
+
Use the shipped Python 3.9+ standard-library script relative to this installed
|
|
22
|
+
skill directory, not a hardcoded Hermes repository path:
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
python3 "<skill-dir>/scripts/search_arxiv.py" "GRPO reinforcement learning" --max 5 --json
|
|
26
|
+
python3 "<skill-dir>/scripts/search_arxiv.py" --id 1706.03762v1 --json
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
The script preserves versioned identifiers and full abstracts, bounds response
|
|
30
|
+
size and retries transient HTTP errors, and rejects malformed feeds/options.
|
|
31
|
+
`unknown` metadata is a coverage gap, not permission to invent dates. Use
|
|
32
|
+
`evidence-citations` for quotations and `office-artifacts` for PDFs. Attach only
|
|
33
|
+
requested file outputs through `cloud task attach`/`cloud deliver`; honor PKF
|
|
34
|
+
carrier instructions for inline answers. Abstract retrieval is not full-paper reading.
|
|
35
|
+
|
|
36
|
+
## Quick Reference
|
|
37
|
+
|
|
38
|
+
| Action | Command |
|
|
39
|
+
|--------|---------|
|
|
40
|
+
| Search papers | `curl "https://export.arxiv.org/api/query?search_query=all:QUERY&max_results=5"` |
|
|
41
|
+
| Get specific paper | `curl "https://export.arxiv.org/api/query?id_list=2402.03300"` |
|
|
42
|
+
| Read abstract (web) | `web_extract(urls=["https://arxiv.org/abs/2402.03300"])` |
|
|
43
|
+
| Read full paper (PDF) | `web_extract(urls=["https://arxiv.org/pdf/2402.03300"])` |
|
|
44
|
+
|
|
45
|
+
## Searching Papers
|
|
46
|
+
|
|
47
|
+
The API returns Atom XML. Use an XML parser (the shipped script), not grep/sed.
|
|
48
|
+
|
|
49
|
+
### Basic search
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
curl --fail --silent --show-error --max-time 30 "https://export.arxiv.org/api/query?search_query=all:GRPO+reinforcement+learning&max_results=5"
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
### Clean output
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
python3 "<skill-dir>/scripts/search_arxiv.py" "GRPO reinforcement learning" --max 5 --sort date
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
## Search Query Syntax
|
|
62
|
+
|
|
63
|
+
| Prefix | Searches | Example |
|
|
64
|
+
|--------|----------|---------|
|
|
65
|
+
| `all:` | All fields | `all:transformer+attention` |
|
|
66
|
+
| `ti:` | Title | `ti:large+language+models` |
|
|
67
|
+
| `au:` | Author | `au:vaswani` |
|
|
68
|
+
| `abs:` | Abstract | `abs:reinforcement+learning` |
|
|
69
|
+
| `cat:` | Category | `cat:cs.AI` |
|
|
70
|
+
| `co:` | Comment | `co:accepted+NeurIPS` |
|
|
71
|
+
|
|
72
|
+
### Boolean operators
|
|
73
|
+
|
|
74
|
+
```
|
|
75
|
+
# AND (default when using +)
|
|
76
|
+
search_query=all:transformer+attention
|
|
77
|
+
|
|
78
|
+
# OR
|
|
79
|
+
search_query=all:GPT+OR+all:BERT
|
|
80
|
+
|
|
81
|
+
# AND NOT
|
|
82
|
+
search_query=all:language+model+ANDNOT+all:vision
|
|
83
|
+
|
|
84
|
+
# Exact phrase
|
|
85
|
+
search_query=ti:"chain+of+thought"
|
|
86
|
+
|
|
87
|
+
# Combined
|
|
88
|
+
search_query=au:hinton+AND+cat:cs.LG
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
## Sort and Pagination
|
|
92
|
+
|
|
93
|
+
| Parameter | Options |
|
|
94
|
+
|-----------|---------|
|
|
95
|
+
| `sortBy` | `relevance`, `lastUpdatedDate`, `submittedDate` |
|
|
96
|
+
| `sortOrder` | `ascending`, `descending` |
|
|
97
|
+
| `start` | Result offset (0-based) |
|
|
98
|
+
| `max_results` | Number of results (default 10, max 30000) |
|
|
99
|
+
|
|
100
|
+
```bash
|
|
101
|
+
# Latest 10 papers in cs.AI
|
|
102
|
+
curl --fail --silent --show-error --max-time 30 "https://export.arxiv.org/api/query?search_query=cat:cs.AI&sortBy=submittedDate&sortOrder=descending&max_results=10"
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
## Fetching Specific Papers
|
|
106
|
+
|
|
107
|
+
```bash
|
|
108
|
+
# By arXiv ID
|
|
109
|
+
curl --fail --silent --show-error --max-time 30 "https://export.arxiv.org/api/query?id_list=2402.03300"
|
|
110
|
+
|
|
111
|
+
# Multiple papers
|
|
112
|
+
curl --fail --silent --show-error --max-time 30 "https://export.arxiv.org/api/query?id_list=2402.03300,2401.12345,2403.00001"
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
## BibTeX Generation
|
|
116
|
+
|
|
117
|
+
Retrieve structured metadata using `--json`, retaining the complete versioned ID.
|
|
118
|
+
Register the inspected abstract/PDF URL and title with `evidence-citations`, then
|
|
119
|
+
export its escaped `--style bibtex` entries. For article-specific author/year/
|
|
120
|
+
primaryClass fields, use only returned metadata and a BibTeX serializer; leave
|
|
121
|
+
missing fields absent rather than inventing a category or author. Compile the
|
|
122
|
+
actual bibliography and verify rendered URLs and unresolved-citation warnings.
|
|
123
|
+
|
|
124
|
+
## Reading Paper Content
|
|
125
|
+
|
|
126
|
+
After finding a paper, read it:
|
|
127
|
+
|
|
128
|
+
```
|
|
129
|
+
# Abstract page (fast, metadata + abstract)
|
|
130
|
+
web_extract(urls=["https://arxiv.org/abs/2402.03300"])
|
|
131
|
+
|
|
132
|
+
# Full paper (PDF → markdown via Firecrawl)
|
|
133
|
+
web_extract(urls=["https://arxiv.org/pdf/2402.03300"])
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
For local PDF processing, see `office-artifacts`. Use an available extraction
|
|
137
|
+
tool; these examples do not imply a Firecrawl account or full-text entitlement.
|
|
138
|
+
|
|
139
|
+
## Common Categories
|
|
140
|
+
|
|
141
|
+
| Category | Field |
|
|
142
|
+
|----------|-------|
|
|
143
|
+
| `cs.AI` | Artificial Intelligence |
|
|
144
|
+
| `cs.CL` | Computation and Language (NLP) |
|
|
145
|
+
| `cs.CV` | Computer Vision |
|
|
146
|
+
| `cs.LG` | Machine Learning |
|
|
147
|
+
| `cs.CR` | Cryptography and Security |
|
|
148
|
+
| `stat.ML` | Machine Learning (Statistics) |
|
|
149
|
+
| `math.OC` | Optimization and Control |
|
|
150
|
+
| `physics.comp-ph` | Computational Physics |
|
|
151
|
+
|
|
152
|
+
Full list: https://arxiv.org/category_taxonomy
|
|
153
|
+
|
|
154
|
+
## Helper Script
|
|
155
|
+
|
|
156
|
+
The `scripts/search_arxiv.py` script handles XML parsing and provides clean output:
|
|
157
|
+
|
|
158
|
+
```bash
|
|
159
|
+
python3 "<skill-dir>/scripts/search_arxiv.py" "GRPO reinforcement learning"
|
|
160
|
+
python3 "<skill-dir>/scripts/search_arxiv.py" "transformer attention" --max 10 --sort date
|
|
161
|
+
python3 "<skill-dir>/scripts/search_arxiv.py" --author "Yann LeCun" --max 5
|
|
162
|
+
python3 "<skill-dir>/scripts/search_arxiv.py" --category cs.AI --sort date
|
|
163
|
+
python3 "<skill-dir>/scripts/search_arxiv.py" --id 2402.03300
|
|
164
|
+
python3 "<skill-dir>/scripts/search_arxiv.py" --id 2402.03300,2401.12345
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
No dependencies — uses only Python stdlib.
|
|
168
|
+
|
|
169
|
+
---
|
|
170
|
+
|
|
171
|
+
## Semantic Scholar (Citations, Related Papers, Author Profiles)
|
|
172
|
+
|
|
173
|
+
arXiv doesn't provide citation data or recommendations. The optional **Semantic
|
|
174
|
+
Scholar API** provides JSON. Check current endpoint access, authentication and
|
|
175
|
+
rate-limit responses; do not assume a fixed public or API-key quota.
|
|
176
|
+
|
|
177
|
+
### Get paper details + citations
|
|
178
|
+
|
|
179
|
+
```bash
|
|
180
|
+
# By arXiv ID
|
|
181
|
+
curl --fail --silent --show-error --max-time 30 "https://api.semanticscholar.org/graph/v1/paper/arXiv:2402.03300?fields=title,authors,citationCount,referenceCount,influentialCitationCount,year,abstract" | python -m json.tool
|
|
182
|
+
|
|
183
|
+
# By Semantic Scholar paper ID or DOI
|
|
184
|
+
curl --fail --silent --show-error --max-time 30 "https://api.semanticscholar.org/graph/v1/paper/DOI:10.1234/example?fields=title,citationCount"
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
### Get citations OF a paper (who cited it)
|
|
188
|
+
|
|
189
|
+
```bash
|
|
190
|
+
curl --fail --silent --show-error --max-time 30 "https://api.semanticscholar.org/graph/v1/paper/arXiv:2402.03300/citations?fields=title,authors,year,citationCount&limit=10" | python -m json.tool
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
### Get references FROM a paper (what it cites)
|
|
194
|
+
|
|
195
|
+
```bash
|
|
196
|
+
curl --fail --silent --show-error --max-time 30 "https://api.semanticscholar.org/graph/v1/paper/arXiv:2402.03300/references?fields=title,authors,year,citationCount&limit=10" | python -m json.tool
|
|
197
|
+
```
|
|
198
|
+
|
|
199
|
+
### Search papers (alternative to arXiv search, returns JSON)
|
|
200
|
+
|
|
201
|
+
```bash
|
|
202
|
+
curl --fail --silent --show-error --max-time 30 "https://api.semanticscholar.org/graph/v1/paper/search?query=GRPO+reinforcement+learning&limit=5&fields=title,authors,year,citationCount,externalIds" | python -m json.tool
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
### Get paper recommendations
|
|
206
|
+
|
|
207
|
+
```bash
|
|
208
|
+
curl --fail --silent --show-error --max-time 30 -X POST "https://api.semanticscholar.org/recommendations/v1/papers/" \
|
|
209
|
+
-H "Content-Type: application/json" \
|
|
210
|
+
-d '{"positivePaperIds": ["arXiv:2402.03300"], "negativePaperIds": []}' | python -m json.tool
|
|
211
|
+
```
|
|
212
|
+
|
|
213
|
+
### Author profile
|
|
214
|
+
|
|
215
|
+
```bash
|
|
216
|
+
curl --fail --silent --show-error --max-time 30 "https://api.semanticscholar.org/graph/v1/author/search?query=Yann+LeCun&fields=name,hIndex,citationCount,paperCount" | python -m json.tool
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
### Useful Semantic Scholar fields
|
|
220
|
+
|
|
221
|
+
`title`, `authors`, `year`, `abstract`, `citationCount`, `referenceCount`, `influentialCitationCount`, `isOpenAccess`, `openAccessPdf`, `fieldsOfStudy`, `publicationVenue`, `externalIds` (contains arXiv ID, DOI, etc.)
|
|
222
|
+
|
|
223
|
+
---
|
|
224
|
+
|
|
225
|
+
## Complete Research Workflow
|
|
226
|
+
|
|
227
|
+
1. **Discover**: `python3 "<skill-dir>/scripts/search_arxiv.py" "your topic" --sort date --max 10`
|
|
228
|
+
2. **Assess impact**: `curl --fail --silent --show-error --max-time 30 "https://api.semanticscholar.org/graph/v1/paper/arXiv:ID?fields=citationCount,influentialCitationCount"`
|
|
229
|
+
3. **Read abstract**: `web_extract(urls=["https://arxiv.org/abs/ID"])`
|
|
230
|
+
4. **Read full paper**: `web_extract(urls=["https://arxiv.org/pdf/ID"])`
|
|
231
|
+
5. **Find related work**: `curl --fail --silent --show-error --max-time 30 "https://api.semanticscholar.org/graph/v1/paper/arXiv:ID/references?fields=title,citationCount&limit=20"`
|
|
232
|
+
6. **Get recommendations**: POST to Semantic Scholar recommendations endpoint
|
|
233
|
+
7. **Track authors**: `curl --fail --silent --show-error --max-time 30 "https://api.semanticscholar.org/graph/v1/author/search?query=NAME"`
|
|
234
|
+
|
|
235
|
+
## Rate Limits
|
|
236
|
+
|
|
237
|
+
| API | Rate | Auth |
|
|
238
|
+
|-----|------|------|
|
|
239
|
+
| arXiv | Space requests by at least 3 seconds; honor server limits | No key for public metadata |
|
|
240
|
+
| Semantic Scholar | Honor current service limits and Retry-After | Endpoint/account dependent |
|
|
241
|
+
|
|
242
|
+
## Notes
|
|
243
|
+
|
|
244
|
+
- arXiv returns Atom XML — use the helper script or parsing snippet for clean output
|
|
245
|
+
- Semantic Scholar returns JSON — pipe through `python -m json.tool` for readability
|
|
246
|
+
- arXiv IDs: old format (`hep-th/0601001`) vs new (`2402.03300`)
|
|
247
|
+
- PDF: `https://arxiv.org/pdf/{id}` — Abstract: `https://arxiv.org/abs/{id}`
|
|
248
|
+
- HTML (when available): `https://arxiv.org/html/{id}`
|
|
249
|
+
- For local PDF processing, see `office-artifacts`.
|
|
250
|
+
|
|
251
|
+
## ID Versioning
|
|
252
|
+
|
|
253
|
+
- `arxiv.org/abs/1706.03762` always resolves to the **latest** version
|
|
254
|
+
- `arxiv.org/abs/1706.03762v1` points to a **specific** immutable version
|
|
255
|
+
- When generating citations, preserve the version suffix you actually read to prevent citation drift (a later version may substantially change content)
|
|
256
|
+
- The API `<id>` field returns the versioned URL (e.g., `http://arxiv.org/abs/1706.03762v7`)
|
|
257
|
+
|
|
258
|
+
## Withdrawn Papers
|
|
259
|
+
|
|
260
|
+
Papers can be withdrawn after submission. When this happens:
|
|
261
|
+
- The `<summary>` field contains a withdrawal notice (look for "withdrawn" or "retracted")
|
|
262
|
+
- Metadata fields may be incomplete
|
|
263
|
+
- Always check the summary before treating a result as a valid paper
|