@prismer/runtime 2.0.8 → 2.2.63
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 +4004 -0
- package/README.md +34 -12
- package/apc/skills/FIELD-DICTIONARY.md +111 -0
- package/apc/skills/bug-reproduce/SKILL.md +150 -0
- package/apc/skills/bug-reproduce/skill.json +96 -0
- package/apc/skills/code-review/SKILL.md +198 -0
- package/apc/skills/code-review/skill.json +124 -0
- package/apc/skills/design-review/SKILL.md +122 -0
- package/apc/skills/design-review/skill.json +88 -0
- package/apc/skills/doc-sync/SKILL.md +168 -0
- package/apc/skills/doc-sync/skill.json +81 -0
- package/apc/skills/env-doctor/SKILL.md +194 -0
- package/apc/skills/env-doctor/skill.json +209 -0
- package/apc/skills/git-ops/SKILL.md +189 -0
- package/apc/skills/git-ops/skill.json +94 -0
- package/apc/skills/impact-trace/SKILL.md +168 -0
- package/apc/skills/impact-trace/skill.json +104 -0
- package/apc/skills/observability/SKILL.md +195 -0
- package/apc/skills/observability/skill.json +116 -0
- package/apc/skills/release-db-config-sync/SKILL.md +186 -0
- package/apc/skills/release-db-config-sync/skill.json +109 -0
- package/apc/skills/release-ota-promote/SKILL.md +195 -0
- package/apc/skills/release-ota-promote/skill.json +176 -0
- package/apc/skills/release-preflight/SKILL.md +174 -0
- package/apc/skills/release-preflight/skill.json +175 -0
- package/apc/skills/release-rollback/SKILL.md +214 -0
- package/apc/skills/release-rollback/skill.json +230 -0
- package/apc/skills/release-tag/SKILL.md +194 -0
- package/apc/skills/release-tag/skill.json +94 -0
- package/apc/skills/releasing-prod/SKILL.md +49 -0
- package/apc/skills/releasing-test/SKILL.md +144 -0
- package/apc/skills/sdk-release/SKILL.md +200 -0
- package/apc/skills/spec-intake/SKILL.md +169 -0
- package/apc/skills/spec-intake/skill.json +93 -0
- package/apc/skills/test-result-feedback/SKILL.md +239 -0
- package/apc/skills/test-result-feedback/skill.json +193 -0
- package/apc/skills/test-runner/SKILL.md +169 -0
- package/apc/skills/test-runner/skill.json +103 -0
- package/apc/skills/ui-align/SKILL.md +209 -0
- package/apc/skills/ui-align/skill.json +114 -0
- package/apc/skills/ui-canvas/SKILL.md +148 -0
- package/apc/skills/ui-canvas/skill.json +127 -0
- package/built-in-skills/agent-coordination/SKILL.md +77 -38
- package/built-in-skills/agent-meta/SKILL.md +12 -0
- package/built-in-skills/assets/SKILL.md +9 -7
- package/built-in-skills/browser-use/SKILL.md +93 -0
- package/built-in-skills/canvas-design/SKILL.md +4 -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 +10 -5
- package/built-in-skills/claude-api/SKILL.md +2 -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/DEEPENING.md +37 -0
- package/built-in-skills/codebase-design/DESIGN-IT-TWICE.md +44 -0
- package/built-in-skills/codebase-design/LICENSE +21 -0
- package/built-in-skills/codebase-design/SKILL.md +130 -0
- 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 +117 -0
- package/built-in-skills/council-creator/SKILL.md +427 -0
- package/built-in-skills/diagnosing-bugs/LICENSE +21 -0
- package/built-in-skills/diagnosing-bugs/SKILL.md +148 -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/diagnosing-bugs/scripts/hitl-loop.template.sh +41 -0
- package/built-in-skills/doc-coauthoring/SKILL.md +7 -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/domain-modeling/ADR-FORMAT.md +47 -0
- package/built-in-skills/domain-modeling/CONTEXT-FORMAT.md +60 -0
- package/built-in-skills/domain-modeling/LICENSE +21 -0
- package/built-in-skills/domain-modeling/SKILL.md +76 -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 +7 -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/human-approval/SKILL.md +17 -2
- package/built-in-skills/image-generate/SKILL.md +107 -301
- package/built-in-skills/image-generate/scripts/generate-and-deliver.mjs +310 -0
- package/built-in-skills/ingest/SKILL.md +13 -45
- package/built-in-skills/internal-comms/SKILL.md +1 -0
- package/built-in-skills/liteparse/SKILL.md +130 -110
- package/built-in-skills/mcp-builder/SKILL.md +1 -0
- 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 +444 -55
- 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 +332 -0
- 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 +37 -4
- package/built-in-skills/office-artifacts/references/RESOURCE-LIMITS.md +44 -0
- package/built-in-skills/office-artifacts/references/document-generation/GUIDE.md +105 -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/okr/SKILL.md +154 -0
- package/built-in-skills/persona/SKILL.md +81 -0
- package/built-in-skills/persona-generator/SKILL.md +296 -0
- package/built-in-skills/pkf-svg/SKILL.md +258 -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 +258 -0
- 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 +27 -7
- 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/proactivity/SKILL.md +84 -0
- package/built-in-skills/remotion/SKILL.md +431 -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 +209 -0
- package/built-in-skills/role-builder/scripts/author-role.mjs +350 -0
- package/built-in-skills/role-builder/scripts/ingest-role.mjs +121 -0
- package/built-in-skills/role-builder/scripts/instantiate-and-run.mjs +304 -0
- package/built-in-skills/role-builder/scripts/operation-harness.mjs +269 -0
- 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 +182 -421
- 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/external-library-import.md +110 -0
- 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-creator/references/skill-authoring/GUIDE.md +134 -0
- package/built-in-skills/{skill-authoring/skill.json → skill-creator/references/skill-authoring/draft-contract.json} +3 -3
- package/built-in-skills/skill-creator/references/skill-builder/GUIDE.md +167 -0
- 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 +498 -0
- 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/SKILL.md +20 -0
- 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 +39 -24
- package/built-in-skills/tdd/LICENSE +21 -0
- package/built-in-skills/tdd/SKILL.md +117 -0
- package/built-in-skills/tdd/mocking.md +59 -0
- package/built-in-skills/tdd/refactoring.md +10 -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/tdd/tests.md +61 -0
- package/built-in-skills/team/SKILL.md +3 -2
- package/built-in-skills/web-artifacts-builder/SKILL.md +4 -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 +10 -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/wechat-pay/SKILL.md +59 -0
- 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 +75799 -20210
- package/dist/cli.js +75900 -20248
- package/dist/index.cjs +76159 -20082
- package/dist/index.d.cts +4766 -766
- package/dist/index.d.ts +4766 -766
- package/dist/index.js +76040 -19960
- package/package.json +42 -6
- package/plugins/memory/prismer/__init__.py +1215 -0
- package/plugins/memory/prismer/plugin.yaml +8 -0
- package/plugins/memory/prismer/tool-schemas.generated.json +257 -0
- package/plugins/tools/prismer-recall/__init__.py +282 -0
- package/plugins/tools/prismer-recall/plugin.yaml +15 -0
- package/built-in-skills/memory-curation/SKILL.md +0 -135
- package/built-in-skills/skill-authoring/SKILL.md +0 -124
- package/built-in-skills/web-artifacts-builder/scripts/shadcn-components.tar.gz +0 -0
|
@@ -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
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
"""Bounded, version-preserving arXiv Atom search (stdlib only)."""
|
|
3
|
+
import argparse
|
|
4
|
+
import json
|
|
5
|
+
import re
|
|
6
|
+
import sys
|
|
7
|
+
import time
|
|
8
|
+
import urllib.error
|
|
9
|
+
import urllib.parse
|
|
10
|
+
import urllib.request
|
|
11
|
+
import xml.etree.ElementTree as ET
|
|
12
|
+
|
|
13
|
+
NS = {"a": "http://www.w3.org/2005/Atom"}
|
|
14
|
+
ID = re.compile(r"(?:\d{4}\.\d{4,5}|[a-z-]+(?:\.[A-Z]{2})?/\d{7})(?:v[1-9]\d*)?\Z")
|
|
15
|
+
SORTS = {"relevance": "relevance", "date": "submittedDate", "updated": "lastUpdatedDate"}
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
def parse_feed(data):
|
|
19
|
+
root = ET.fromstring(data)
|
|
20
|
+
if root.tag != "{" + NS["a"] + "}feed":
|
|
21
|
+
raise ValueError("response is not an Atom feed")
|
|
22
|
+
papers = []
|
|
23
|
+
for entry in root.findall("a:entry", NS):
|
|
24
|
+
def field(name, default="unknown"):
|
|
25
|
+
return " ".join((entry.findtext("a:" + name, default, NS) or default).split())
|
|
26
|
+
raw_id = field("id", "")
|
|
27
|
+
if "/api/errors" in raw_id:
|
|
28
|
+
raise ValueError("arXiv API error: " + field("summary"))
|
|
29
|
+
parsed = urllib.parse.urlsplit(raw_id)
|
|
30
|
+
if parsed.hostname not in {"arxiv.org", "www.arxiv.org", "export.arxiv.org"} or not parsed.path.startswith("/abs/"):
|
|
31
|
+
raise ValueError("entry has an invalid arXiv identifier")
|
|
32
|
+
paper_id = parsed.path.removeprefix("/abs/")
|
|
33
|
+
if not ID.fullmatch(paper_id):
|
|
34
|
+
raise ValueError("entry has an invalid arXiv identifier")
|
|
35
|
+
papers.append({
|
|
36
|
+
"id": paper_id, "title": field("title"),
|
|
37
|
+
"published": field("published"), "updated": field("updated"),
|
|
38
|
+
"authors": [a.findtext("a:name", "unknown", NS) for a in entry.findall("a:author", NS)],
|
|
39
|
+
"categories": [c.get("term", "") for c in entry.findall("a:category", NS)],
|
|
40
|
+
"abstract": field("summary", ""),
|
|
41
|
+
"abs_url": "https://arxiv.org/abs/" + paper_id,
|
|
42
|
+
"pdf_url": "https://arxiv.org/pdf/" + paper_id,
|
|
43
|
+
})
|
|
44
|
+
return papers
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
def search(query=None, author=None, category=None, ids=None, max_results=5, sort="relevance", start=0, as_json=False):
|
|
48
|
+
if not isinstance(max_results, int) or not 1 <= max_results <= 100:
|
|
49
|
+
raise ValueError("max_results must be between 1 and 100")
|
|
50
|
+
if not isinstance(start, int) or start < 0 or sort not in SORTS:
|
|
51
|
+
raise ValueError("invalid start or sort")
|
|
52
|
+
params = {"max_results": max_results, "start": start, "sortBy": SORTS[sort], "sortOrder": "descending"}
|
|
53
|
+
if ids:
|
|
54
|
+
values = [value.strip() for value in ids.split(",")]
|
|
55
|
+
if len(values) > 100 or not all(ID.fullmatch(value) for value in values):
|
|
56
|
+
raise ValueError("invalid arXiv id list")
|
|
57
|
+
params["id_list"] = ",".join(values)
|
|
58
|
+
else:
|
|
59
|
+
parts = [prefix + ":" + value for prefix, value in [("all", query), ("au", author), ("cat", category)] if value]
|
|
60
|
+
if not parts:
|
|
61
|
+
raise ValueError("provide a query, --author, --category, or --id")
|
|
62
|
+
params["search_query"] = " AND ".join(parts)
|
|
63
|
+
url = "https://export.arxiv.org/api/query?" + urllib.parse.urlencode(params)
|
|
64
|
+
request = urllib.request.Request(url, headers={"User-Agent": "PrismerResearch/1.0"})
|
|
65
|
+
for attempt in range(3):
|
|
66
|
+
try:
|
|
67
|
+
with urllib.request.urlopen(request, timeout=20) as response:
|
|
68
|
+
data = response.read(8 * 1024 * 1024 + 1)
|
|
69
|
+
if len(data) > 8 * 1024 * 1024:
|
|
70
|
+
raise ValueError("arXiv response exceeds 8 MiB")
|
|
71
|
+
break
|
|
72
|
+
except urllib.error.HTTPError as exc:
|
|
73
|
+
if attempt == 2 or exc.code not in {429, 500, 502, 503, 504}:
|
|
74
|
+
raise
|
|
75
|
+
time.sleep(3 * (attempt + 1))
|
|
76
|
+
papers = parse_feed(data)
|
|
77
|
+
if as_json:
|
|
78
|
+
print(json.dumps({"papers": papers, "start": start, "count": len(papers)}, ensure_ascii=False))
|
|
79
|
+
elif not papers:
|
|
80
|
+
print("No results found.")
|
|
81
|
+
else:
|
|
82
|
+
for index, paper in enumerate(papers, start=1):
|
|
83
|
+
print(f"{index}. {paper['title']}\n ID: {paper['id']} | Published: {paper['published']} | Updated: {paper['updated']}")
|
|
84
|
+
print(" Authors: " + ", ".join(paper["authors"]))
|
|
85
|
+
print(" Categories: " + ", ".join(paper["categories"]))
|
|
86
|
+
print(" Abstract: " + paper["abstract"])
|
|
87
|
+
print(f" Links: {paper['abs_url']} | {paper['pdf_url']}\n")
|
|
88
|
+
return papers
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
def main():
|
|
92
|
+
parser = argparse.ArgumentParser(description=__doc__)
|
|
93
|
+
parser.add_argument("query", nargs="?")
|
|
94
|
+
parser.add_argument("--author")
|
|
95
|
+
parser.add_argument("--category")
|
|
96
|
+
parser.add_argument("--id", dest="ids")
|
|
97
|
+
parser.add_argument("--max", type=int, default=5, dest="max_results")
|
|
98
|
+
parser.add_argument("--start", type=int, default=0)
|
|
99
|
+
parser.add_argument("--sort", choices=SORTS, default="relevance")
|
|
100
|
+
parser.add_argument("--json", action="store_true", dest="as_json")
|
|
101
|
+
args = parser.parse_args()
|
|
102
|
+
try:
|
|
103
|
+
search(**vars(args))
|
|
104
|
+
except (ValueError, ET.ParseError, OSError) as exc:
|
|
105
|
+
print(f"arxiv search failed: {exc}", file=sys.stderr)
|
|
106
|
+
return 1
|
|
107
|
+
return 0
|
|
108
|
+
|
|
109
|
+
|
|
110
|
+
if __name__ == "__main__":
|
|
111
|
+
sys.exit(main())
|
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: role-builder
|
|
3
|
+
scope: common
|
|
4
|
+
category: authoring
|
|
5
|
+
description: Create or update a Prismer SS-02 role template from a persona, SOP, job description, or operating brief; instantiate an existing role as a new working agent and run its first task through the bundled one-command harness. Use for "create a role template", "make this role into an agent", "create an agent from this role", or "let this role handle a task". Route standardized instantiate-and-run requests to the script instead of discovering and composing low-level CLI commands.
|
|
6
|
+
license: MIT
|
|
7
|
+
compatibility:
|
|
8
|
+
- prismer-sdk
|
|
9
|
+
- hermes
|
|
10
|
+
- claude-code
|
|
11
|
+
- codex
|
|
12
|
+
- openclaw
|
|
13
|
+
metadata:
|
|
14
|
+
category: authoring
|
|
15
|
+
allowed-tools:
|
|
16
|
+
- Read
|
|
17
|
+
- Write
|
|
18
|
+
- Bash
|
|
19
|
+
- WebFetch
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
# Role Builder
|
|
23
|
+
|
|
24
|
+
Choose exactly one path from the requested outcome. Do not inspect `cloud
|
|
25
|
+
--help`, create probe assets, or compose low-level commands first.
|
|
26
|
+
|
|
27
|
+
## A. Existing role → new working agent → first task
|
|
28
|
+
|
|
29
|
+
Run the bundled harness directly:
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
node scripts/instantiate-and-run.mjs --json
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
Required environment:
|
|
36
|
+
|
|
37
|
+
- `PRISMER_API_KEY`
|
|
38
|
+
- `PRISMER_CLOUD_BASE`
|
|
39
|
+
- `PRISMER_ROLE_SLUG`
|
|
40
|
+
- `PRISMER_WORKSPACE_ID`
|
|
41
|
+
- `PRISMER_TASK`
|
|
42
|
+
|
|
43
|
+
Optional environment:
|
|
44
|
+
|
|
45
|
+
- `PRISMER_AGENT_HANDLE`, `PRISMER_AGENT_DISPLAY_NAME`,
|
|
46
|
+
`PRISMER_AGENT_ADAPTER`, `PRISMER_TARGET_DAEMON_ID`
|
|
47
|
+
- `PRISMER_REQUEST_ID`, `PRISMER_OPERATION_LEDGER`
|
|
48
|
+
- `PRISMER_WORKFLOW_TIMEOUT_MS`, `PRISMER_WORKFLOW_POLL_MS`
|
|
49
|
+
- `PRISMER_ALLOW_REMOTE_WRITE=1` for an explicitly confirmed non-local target
|
|
50
|
+
|
|
51
|
+
The runtime must inject these variables before the turn. Never ask the user to
|
|
52
|
+
paste a credential into chat and never pass one as a command-line flag.
|
|
53
|
+
|
|
54
|
+
The harness validates locally, performs server preflight, creates/resumes the
|
|
55
|
+
role-backed agent, waits for its exact daemon binding, creates one idempotent
|
|
56
|
+
task, and waits for the canonical result. `--no-wait` skips only the final task
|
|
57
|
+
result wait. `--preflight-only` performs no mutation.
|
|
58
|
+
|
|
59
|
+
If it returns `ROLE_CONFIG_REQUIRED`, report the missing level, target, and key
|
|
60
|
+
names exactly. Do not guess values:
|
|
61
|
+
|
|
62
|
+
- `level=skill` or `level=role`, user-owned key: the owner supplies it through
|
|
63
|
+
Studio or `POST /api/im/user-skill-config`; values are sealed and never enter
|
|
64
|
+
the model prompt.
|
|
65
|
+
- role default: edit the role's `parameters[]` declaration/default.
|
|
66
|
+
- global-only Skill key: inject it into the daemon/deployment environment.
|
|
67
|
+
- workspace/runtime issue: repair the named workspace or daemon; do not create
|
|
68
|
+
a different workspace as a workaround.
|
|
69
|
+
|
|
70
|
+
## B. Material → role template
|
|
71
|
+
|
|
72
|
+
Create a directory with exactly the role definition and persona:
|
|
73
|
+
|
|
74
|
+
```text
|
|
75
|
+
<role-slug>/
|
|
76
|
+
├── role.json
|
|
77
|
+
└── SOUL.md
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
`role.json` is the SS-02 governance manifest. `SOUL.md` is persona only; do
|
|
81
|
+
not put credentials, per-run instructions, or an `AGENTS.md` in the role bundle.
|
|
82
|
+
|
|
83
|
+
Minimum useful `role.json`:
|
|
84
|
+
|
|
85
|
+
```json
|
|
86
|
+
{
|
|
87
|
+
"slug": "legal-expert",
|
|
88
|
+
"version": "1.0.0",
|
|
89
|
+
"name": { "en": "Legal Expert", "zh": "法学专家" },
|
|
90
|
+
"description": { "en": "Analyzes legal matters.", "zh": "分析法律事项。" },
|
|
91
|
+
"agentType": "specialist",
|
|
92
|
+
"requiredSkills": [{ "skillSlug": "legal-article-retrieval", "required": true }],
|
|
93
|
+
"taskAuthority": "executor",
|
|
94
|
+
"approvalPolicy": "auto-low-risk",
|
|
95
|
+
"parameters": [],
|
|
96
|
+
"adapters": { "hermes": {} },
|
|
97
|
+
"source": "community",
|
|
98
|
+
"curatedQuality": "review"
|
|
99
|
+
}
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
Use catalog slugs returned by the Skill create/import result. Never derive a
|
|
103
|
+
slug from a directory name, case-normalize it after creation, or invent one.
|
|
104
|
+
Build missing skills with `skill-creator` first.
|
|
105
|
+
|
|
106
|
+
Declare only role-specific business skills in `requiredSkills`. The active
|
|
107
|
+
Admin Built-in Skill baseline is injected automatically at template creation
|
|
108
|
+
and re-resolved when an Agent is instantiated. Do not copy system skills into
|
|
109
|
+
the role manifest and do not attempt to remove an injected skill. Readback
|
|
110
|
+
separates `requiredSkills`, `injectedSkills`, and `effectiveSkills`, plus the
|
|
111
|
+
`baselinePolicyVersion` used for the snapshot.
|
|
112
|
+
|
|
113
|
+
Put the bundle path in `PRISMER_ROLE_BUNDLE`, then run the fixed authoring
|
|
114
|
+
closure as one command:
|
|
115
|
+
|
|
116
|
+
```bash
|
|
117
|
+
node scripts/author-role.mjs --json
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
Optional environment: `PRISMER_ROLE_PUBLISH=1` for an explicitly requested
|
|
121
|
+
Marketplace publish, `PRISMER_ROLE_AUTHORING_LEDGER`, `PRISMER_CLOUD_BIN`,
|
|
122
|
+
`PRISMER_CLOUD_BASE`, and `PRISMER_ALLOW_REMOTE_WRITE=1` for a confirmed
|
|
123
|
+
non-local target. The harness performs local validation, read-only required
|
|
124
|
+
Skill preflight, private create/owner-update, and owner readback. It resumes a
|
|
125
|
+
completed same-revision ledger without pushing another role version. Report the
|
|
126
|
+
returned slug/version; do not use `role apply` as a test.
|
|
127
|
+
|
|
128
|
+
The clean lower-level primitives remain available for diagnosis:
|
|
129
|
+
|
|
130
|
+
```bash
|
|
131
|
+
cloud role validate ./<role-slug> --json
|
|
132
|
+
cloud role test ./<role-slug> --json
|
|
133
|
+
cloud role create ./<role-slug> --mine --json
|
|
134
|
+
cloud role show <returned-slug-or-id> --json
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
For the retained legacy entrypoint (requires the current Cloud CLI; no raw HTTP fallback):
|
|
138
|
+
|
|
139
|
+
```bash
|
|
140
|
+
node scripts/ingest-role.mjs ./<role-slug> --mine
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
It reads `PRISMER_API_KEY` and `PRISMER_CLOUD_BASE` from the already-injected
|
|
144
|
+
environment. Do not write literal secrets in the command, bundle, or ledger.
|
|
145
|
+
The adapter delegates validation and Skill preflight to Cloud before creation.
|
|
146
|
+
Ledger-based workflows require an injected API key even if Cloud has saved
|
|
147
|
+
credentials: the target origin and that executing key's hash bind every receipt.
|
|
148
|
+
Changing either requires a separate ledger. Completed receipts are read back,
|
|
149
|
+
not blindly trusted. A lock is never stolen on timeout; after a crash, verify
|
|
150
|
+
the old process has stopped and reconcile remote writes before explicit recovery.
|
|
151
|
+
|
|
152
|
+
## C. Change an existing agent's role
|
|
153
|
+
|
|
154
|
+
Only when the user explicitly identifies an existing target:
|
|
155
|
+
|
|
156
|
+
```bash
|
|
157
|
+
cloud role apply <role-slug> --agent <imUserId> --workspace-id <workspaceId>
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
Never apply a role to the currently executing agent as a probe. Template
|
|
161
|
+
creation is complete after validation, dependency test, ingest, and readback;
|
|
162
|
+
it does not require mutating a live agent.
|
|
163
|
+
|
|
164
|
+
## Configuration ownership
|
|
165
|
+
|
|
166
|
+
Declare each value once at the level that owns it:
|
|
167
|
+
|
|
168
|
+
| Need | Owner/declaration | Delivery |
|
|
169
|
+
| --------------------------------- | ------------------------------------------------- | -------------------------------- |
|
|
170
|
+
| reusable Skill config | Skill frontmatter `config:` | Skill subprocess env |
|
|
171
|
+
| role behavior/default | role `parameters[]`, `kind:"default"` | structured `roleParams` |
|
|
172
|
+
| per-account role secret | role `parameters[]`, `kind:"user", type:"secret"` | environment-only `roleParamsEnv` |
|
|
173
|
+
| role default for a required Skill | role `skillConfig[skillSlug]` | resolved Skill env |
|
|
174
|
+
| workspace identity/policy | workspace fields and policy APIs | server/runtime bootstrap |
|
|
175
|
+
| workspace runtime secret | daemon/deployment env | child process env only |
|
|
176
|
+
| invocation target/recovery | `PRISMER_WORKSPACE_ID`, daemon/request/ledger env | harness request only |
|
|
177
|
+
|
|
178
|
+
Do not duplicate values across Skill prose, role persona, workspace metadata,
|
|
179
|
+
and workflow flags. Workspace metadata is not a secret store.
|
|
180
|
+
|
|
181
|
+
## Harness negative-control contract
|
|
182
|
+
|
|
183
|
+
The bundled mutation harness must keep these guarantees:
|
|
184
|
+
|
|
185
|
+
1. Secret-bearing flags, missing/invalid local input, and unconfirmed remote
|
|
186
|
+
writes fail locally before any fetch.
|
|
187
|
+
2. Server preflight rejects inaccessible/non-deployable roles, missing config,
|
|
188
|
+
handle collisions, and absent runtime before creating an operation or agent.
|
|
189
|
+
3. Instance and task writes carry durable idempotency keys. Instance retries
|
|
190
|
+
return the same operation and reject changed instance input with 409; task
|
|
191
|
+
retries return the first committed task and reject changed task input with 409. Derived task keys are fixed-length hashes, so a 191-character instance
|
|
192
|
+
request ID cannot overflow the task contract. A new invocation gets a fresh
|
|
193
|
+
request ID; set `PRISMER_REQUEST_ID` only to resume that same invocation.
|
|
194
|
+
4. A secret-free ledger is written atomically before mutation. Output contains
|
|
195
|
+
stage, code, retryability, and recovery path—never credentials. Reusing the
|
|
196
|
+
ledger path with a different invocation hash is rejected before fetch.
|
|
197
|
+
5. Provisioning failure compensates the newly created agent. Incomplete cleanup
|
|
198
|
+
remains `cleanupStatus=pending` with the Agent pointer retained and retryable;
|
|
199
|
+
it must never be reported as cleaned. Task failure keeps a valid agent for
|
|
200
|
+
diagnosis/retry.
|
|
201
|
+
6. `ready` means the Agent is bound to the exact requested daemon. A
|
|
202
|
+
`wrong_daemon` binding fails explicitly and cannot advance to task creation.
|
|
203
|
+
|
|
204
|
+
## Sources of truth
|
|
205
|
+
|
|
206
|
+
- Role standard: `public/docs/Standardization/02-role-template-standard.md`
|
|
207
|
+
- Harness standard: `public/docs/Standardization/16-automation-harness-standard.md`
|
|
208
|
+
- Complete catalog example: `sdk/cloud/catalog/roles/team-manager.json`
|
|
209
|
+
- Skill authoring/import: `sdk/cloud/catalog/skills/skill-creator/SKILL.md`
|