iron-edge 1.2.0 → 2.0.0
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/LICENSE +21 -0
- package/README.md +114 -25
- package/agents/iron-3d.md +1 -1
- package/agents/iron-animations.md +3 -2
- package/agents/iron-auditor.md +175 -0
- package/agents/iron-brand.md +3 -2
- package/agents/iron-ceo.md +143 -0
- package/agents/iron-claude.md +54 -0
- package/agents/iron-clone.md +87 -0
- package/agents/iron-cloning.md +21 -3
- package/agents/iron-commercial.md +3 -2
- package/agents/iron-community.md +1 -1
- package/agents/iron-content.md +3 -2
- package/agents/iron-copy.md +3 -2
- package/agents/iron-council.md +3 -2
- package/agents/iron-courses.md +3 -2
- package/agents/iron-cyber.md +3 -2
- package/agents/iron-design.md +3 -2
- package/agents/iron-eng.md +138 -0
- package/agents/iron-finance.md +3 -2
- package/agents/iron-forge.md +147 -0
- package/agents/iron-growth.md +3 -2
- package/agents/iron-install.md +15 -13
- package/agents/iron-paidmedia.md +3 -2
- package/agents/iron-premium.md +146 -0
- package/agents/iron-product.md +3 -2
- package/agents/iron-research.md +3 -2
- package/agents/iron-search.md +82 -0
- package/agents/iron-shopify.md +80 -4
- package/agents/iron-spy.md +1 -1
- package/agents/iron-storytelling.md +3 -2
- package/agents/iron-video.md +1 -1
- package/agents/lp-cinematico.md +2 -2
- package/agents/xq-advisory.md +1 -1
- package/agents/xq-brand.md +1 -1
- package/agents/xq-clevel.md +1 -1
- package/agents/xq-codecore.md +19 -19
- package/agents/xq-copy.md +1 -1
- package/agents/xq-copymaster.md +1 -1
- package/agents/xq-cyber.md +1 -1
- package/agents/xq-data.md +1 -1
- package/agents/xq-design.md +1 -1
- package/agents/xq-hormozi.md +2 -2
- package/agents/xq-movement.md +1 -1
- package/agents/xq-storytelling.md +1 -1
- package/agents/xq-traffic.md +1 -1
- package/bin/iron-edge.js +74 -0
- package/docs/2026-08-21-como-pedir-software-ao-iron.md +62 -0
- package/docs/2026-08-21-skill-gate-fonte-unica.md +70 -0
- package/installer/install-mac.sh +52 -0
- package/installer/install-windows.ps1 +65 -0
- package/installer/install.js +518 -0
- package/iron-routing-map.md +276 -0
- package/package.json +14 -7
- package/skills/anotar/SKILL.md +50 -0
- package/skills/brandkit/SKILL.md +152 -0
- package/skills/clone-distill/SKILL.md +45 -0
- package/skills/clone-distill/scripts/distill.mjs +144 -0
- package/skills/clone-inventory/SKILL.md +51 -0
- package/skills/clone-inventory/package-lock.json +307 -0
- package/skills/clone-inventory/package.json +1 -0
- package/skills/clone-inventory/scripts/inventory.mjs +336 -0
- package/skills/clone-organize/SKILL.md +107 -0
- package/skills/clone-organize/package-lock.json +307 -0
- package/skills/clone-organize/package.json +1 -0
- package/skills/clone-organize/scripts/verify-visual.mjs +79 -0
- package/skills/clone-site/SKILL.md +104 -0
- package/skills/clone-site/package-lock.json +360 -0
- package/skills/clone-site/package.json +12 -0
- package/skills/clone-site/reference/lessons.md +131 -0
- package/skills/clone-site/reference/workflow.md +211 -0
- package/skills/clone-site/scripts/capture.mjs +507 -0
- package/skills/clone-site/scripts/clone.sh +166 -0
- package/skills/clone-site/scripts/fix_paths.py +118 -0
- package/skills/clone-site/scripts/serve.py +129 -0
- package/skills/clone-site/scripts/verify.mjs +126 -0
- package/skills/clone-site/scripts/wget_fallback.sh +38 -0
- package/skills/clone-transplant/SKILL.md +50 -0
- package/skills/clone-transplant/scripts/transplant.mjs +299 -0
- package/skills/conectar-mcp/SKILL.md +38 -0
- package/skills/escada/SKILL.md +62 -0
- package/skills/faxina/SKILL.md +34 -0
- package/skills/gate/SKILL.md +318 -0
- package/skills/gate/hooks/gate-dirty.sh +40 -0
- package/skills/gate/hooks/gate-stop.sh +31 -0
- package/skills/gate/preflight.py +132 -0
- package/skills/lp-cinematico/SKILL.md +5 -0
- package/skills/roteiro-video/SKILL.md +5 -0
- package/skills/salvar/SKILL.md +80 -0
- package/squads/squad-animations/README.md +18 -6
- package/squads/squad-animations/agents/animation-interpreter.md +9 -0
- package/squads/squad-animations/agents/animation-performance-engineer.md +9 -0
- package/squads/squad-animations/agents/animations-orqx.md +11 -2
- package/squads/squad-animations/agents/css-motion-artist.md +9 -0
- package/squads/squad-animations/agents/generative-particle-engineer.md +9 -0
- package/squads/squad-animations/agents/motion-choreographer.md +9 -0
- package/squads/squad-animations/agents/scroll-narrative-engineer.md +9 -0
- package/squads/squad-animations/agents/shader-artist.md +9 -0
- package/squads/squad-animations/agents/threejs-architect.md +9 -0
- package/squads/squad-animations/knowledge-base/chrome-brain-integration.md +17 -43
- package/squads/squad-animations/squad.yaml +21 -7
- package/squads/squad-brand/README.md +9 -3
- package/squads/squad-brand/agents/al-ries.md +9 -0
- package/squads/squad-brand/agents/alina-wheeler.md +9 -0
- package/squads/squad-brand/agents/archetype-consultant.md +9 -0
- package/squads/squad-brand/agents/brand-archetype-strategist.md +9 -0
- package/squads/squad-brand/agents/brand-auditor.md +9 -0
- package/squads/squad-brand/agents/brand-collateral-designer.md +9 -0
- package/squads/squad-brand/agents/brand-compiler.md +9 -0
- package/squads/squad-brand/agents/brand-creative-engineer.md +9 -0
- package/squads/squad-brand/agents/brand-culture-architect.md +9 -0
- package/squads/squad-brand/agents/brand-growth-strategist.md +9 -0
- package/squads/squad-brand/agents/brand-identity-designer.md +9 -0
- package/squads/squad-brand/agents/brand-motion-vfx.md +9 -0
- package/squads/squad-brand/agents/brand-naming-specialist.md +9 -0
- package/squads/squad-brand/agents/brand-orqx.md +12 -3
- package/squads/squad-brand/agents/brand-positioning-strategist.md +9 -0
- package/squads/squad-brand/agents/brand-sonic-designer.md +9 -0
- package/squads/squad-brand/agents/brand-strategist.md +9 -0
- package/squads/squad-brand/agents/brand-system-architect.md +9 -0
- package/squads/squad-brand/agents/byron-sharp.md +9 -0
- package/squads/squad-brand/agents/david-aaker.md +9 -0
- package/squads/squad-brand/agents/denise-yohn.md +9 -0
- package/squads/squad-brand/agents/domain-scout.md +9 -0
- package/squads/squad-brand/agents/donald-miller.md +9 -0
- package/squads/squad-brand/agents/emily-heyward.md +9 -0
- package/squads/squad-brand/agents/jean-noel-kapferer.md +9 -0
- package/squads/squad-brand/agents/kevin-keller.md +9 -0
- package/squads/squad-brand/agents/marty-neumeier.md +9 -0
- package/squads/squad-brand/agents/miller-sticky-brand.md +9 -0
- package/squads/squad-brand/agents/naming-strategist.md +9 -0
- package/squads/squad-brand/knowledge-base/chrome-brain-integration.md +17 -35
- package/squads/squad-brand/squad.yaml +43 -10
- package/squads/squad-brand/tasks/create-components.md +1 -1
- package/squads/squad-brand/tasks/create-dark-mode.md +1 -1
- package/squads/squad-brand/tasks/create-token-system.md +1 -1
- package/squads/squad-brand/tasks/define-grid-system.md +1 -1
- package/squads/squad-brand/tasks/design-dynamic-identity-system.md +1 -1
- package/squads/squad-brand/tasks/export-tokens.md +1 -1
- package/squads/squad-brand/templates/client-delivery-template.md +1 -1
- package/squads/squad-claude/README.md +19 -7
- package/squads/squad-claude/agents/claude-orqx.md +13 -4
- package/squads/squad-claude/agents/config-engineer.md +9 -0
- package/squads/squad-claude/agents/hooks-architect.md +9 -0
- package/squads/squad-claude/agents/mcp-integrator.md +9 -0
- package/squads/squad-claude/agents/project-integrator.md +9 -0
- package/squads/squad-claude/agents/roadmap-sentinel.md +9 -0
- package/squads/squad-claude/agents/skill-craftsman.md +9 -0
- package/squads/squad-claude/agents/swarm-orqx.md +9 -0
- package/squads/squad-claude/checklists/agent-readiness-checklist.md +1 -2
- package/squads/squad-claude/checklists/claude-setup-audit-checklist.md +1 -1
- package/squads/squad-claude/checklists/prompt-quality-checklist.md +0 -5
- package/squads/squad-claude/knowledge-base/chrome-brain-integration.md +17 -42
- package/squads/squad-claude/knowledge-base/claude-code-configuration-reference.md +6 -11
- package/squads/squad-claude/knowledge-base/claude-code-hooks-reference.md +28 -19
- package/squads/squad-claude/knowledge-base/claude-code-internals-deep.md +16 -2
- package/squads/squad-claude/knowledge-base/claude-code-tools-reference.md +2 -2
- package/squads/squad-claude/knowledge-base/context-window-optimization.md +3 -3
- package/squads/squad-claude/knowledge-base/knowledge-architecture-reference.md +3 -3
- package/squads/squad-claude/knowledge-base/mcp-integration-patterns.md +1 -1
- package/squads/squad-claude/knowledge-base/memory-systems-reference.md +6 -6
- package/squads/squad-claude/knowledge-base/obsidian-claude-integration.md +5 -5
- package/squads/squad-claude/knowledge-base/retrieval-augmented-generation.md +3 -3
- package/squads/squad-claude/knowledge-base/skill-creation-patterns.md +10 -10
- package/squads/squad-claude/knowledge-base/swarm-orchestration-patterns.md +10 -10
- package/squads/squad-claude/squad.yaml +20 -7
- package/squads/squad-claude/templates/agent-definition-template.md +1 -1
- package/squads/squad-cloning/README.md +22 -6
- package/squads/squad-cloning/agents/agent-forger.md +36 -3
- package/squads/squad-cloning/agents/cloning-orqx.md +39 -4
- package/squads/squad-cloning/agents/cognitive-extractor.md +33 -0
- package/squads/squad-cloning/agents/content-capturer.md +33 -0
- package/squads/squad-cloning/agents/kb-architect.md +33 -0
- package/squads/squad-cloning/agents/mind-synthesizer.md +33 -0
- package/squads/squad-cloning/agents/source-hunter.md +33 -0
- package/squads/squad-cloning/agents/squad-assembler.md +35 -2
- package/squads/squad-cloning/checklists/clone-completeness-checklist.md +1 -1
- package/squads/squad-cloning/checklists/pre-deploy-checklist.md +3 -3
- package/squads/squad-cloning/knowledge-base/agent-generation-guide.md +4 -4
- package/squads/squad-cloning/knowledge-base/chrome-brain-integration.md +17 -43
- package/squads/squad-cloning/knowledge-base/clone-tier-standards.md +1 -1
- package/squads/squad-cloning/knowledge-base/cross-squad-deployment.md +2 -2
- package/squads/squad-cloning/knowledge-base/ethical-guidelines.md +2 -2
- package/squads/squad-cloning/knowledge-base/multi-agent-deployment-patterns.md +1 -1
- package/squads/squad-cloning/knowledge-base/skill-standard-for-clones.md +5 -5
- package/squads/squad-cloning/squad.yaml +32 -11
- package/squads/squad-cloning/tasks/assign-content-class.md +33 -23
- package/squads/squad-cloning/tasks/build-cognitive-profile.md +38 -23
- package/squads/squad-cloning/tasks/calculate-confidence-score.md +36 -23
- package/squads/squad-cloning/tasks/capture-article-text.md +53 -23
- package/squads/squad-cloning/tasks/capture-social-posts.md +50 -23
- package/squads/squad-cloning/tasks/compile-source-catalog.md +37 -23
- package/squads/squad-cloning/tasks/cross-reference-kbs.md +67 -23
- package/squads/squad-cloning/tasks/deploy-cross-squad-kbs.md +43 -28
- package/squads/squad-cloning/tasks/design-kb-taxonomy.md +70 -23
- package/squads/squad-cloning/tasks/determine-clone-tier.md +45 -23
- package/squads/squad-cloning/tasks/discover-articles-interviews.md +36 -23
- package/squads/squad-cloning/tasks/discover-books-publications.md +36 -23
- package/squads/squad-cloning/tasks/discover-podcasts-appearances.md +36 -23
- package/squads/squad-cloning/tasks/discover-social-media-content.md +36 -23
- package/squads/squad-cloning/tasks/discover-youtube-channels.md +37 -23
- package/squads/squad-cloning/tasks/escalate-quality-issues.md +40 -23
- package/squads/squad-cloning/tasks/estimate-content-volume.md +37 -23
- package/squads/squad-cloning/tasks/extract-book-content.md +53 -23
- package/squads/squad-cloning/tasks/extract-decision-patterns.md +33 -23
- package/squads/squad-cloning/tasks/extract-heuristics.md +33 -23
- package/squads/squad-cloning/tasks/extract-mental-models.md +33 -23
- package/squads/squad-cloning/tasks/extract-vocabulary-tone.md +29 -23
- package/squads/squad-cloning/tasks/extract-workflows-processes.md +34 -23
- package/squads/squad-cloning/tasks/finalize-clone-delivery.md +37 -23
- package/squads/squad-cloning/tasks/generate-agent-commands.md +48 -23
- package/squads/squad-cloning/tasks/generate-agent-heuristics.md +44 -23
- package/squads/squad-cloning/tasks/generate-agent-persona.md +53 -23
- package/squads/squad-cloning/tasks/generate-agent-protocols.md +45 -23
- package/squads/squad-cloning/tasks/generate-checklist-files.md +43 -28
- package/squads/squad-cloning/tasks/generate-cross-squad-handoffs.md +53 -23
- package/squads/squad-cloning/tasks/generate-extraction-report.md +30 -23
- package/squads/squad-cloning/tasks/generate-framework-kbs.md +68 -23
- package/squads/squad-cloning/tasks/generate-methodology-kbs.md +68 -23
- package/squads/squad-cloning/tasks/generate-mind-map.md +36 -23
- package/squads/squad-cloning/tasks/generate-pattern-kbs.md +66 -23
- package/squads/squad-cloning/tasks/generate-reference-kbs.md +67 -23
- package/squads/squad-cloning/tasks/generate-squad-yaml.md +39 -27
- package/squads/squad-cloning/tasks/generate-task-files.md +45 -28
- package/squads/squad-cloning/tasks/generate-template-files.md +39 -28
- package/squads/squad-cloning/tasks/generate-workflow-files.md +44 -28
- package/squads/squad-cloning/tasks/identify-contradictions.md +32 -23
- package/squads/squad-cloning/tasks/identify-meta-patterns.md +42 -23
- package/squads/squad-cloning/tasks/initiate-clone-project.md +40 -23
- package/squads/squad-cloning/tasks/monitor-pipeline-progress.md +33 -23
- package/squads/squad-cloning/tasks/normalize-raw-content.md +43 -23
- package/squads/squad-cloning/tasks/package-squad-output.md +39 -28
- package/squads/squad-cloning/tasks/resolve-contradictions.md +47 -23
- package/squads/squad-cloning/tasks/run-pre-publish-checklist.md +39 -27
- package/squads/squad-cloning/tasks/tag-confidence-levels.md +30 -23
- package/squads/squad-cloning/tasks/transcribe-podcast-episodes.md +56 -23
- package/squads/squad-cloning/tasks/transcribe-youtube-videos.md +54 -23
- package/squads/squad-cloning/tasks/validate-agent-completeness.md +47 -23
- package/squads/squad-cloning/tasks/validate-kb-citations.md +62 -23
- package/squads/squad-cloning/tasks/validate-transcription-quality.md +39 -23
- package/squads/squad-cloning/workflows/full-clone-pipeline.yaml +17 -1
- package/squads/squad-cloning/workflows/tier2-consultant.yaml +1 -1
- package/squads/squad-commercial/README.md +18 -6
- package/squads/squad-commercial/agents/commercial-orqx.md +11 -2
- package/squads/squad-commercial/agents/cs-business-auditor.md +12 -3
- package/squads/squad-commercial/agents/cs-client-success.md +12 -3
- package/squads/squad-commercial/agents/cs-crm-specialist.md +12 -3
- package/squads/squad-commercial/agents/cs-funnel-architect.md +12 -3
- package/squads/squad-commercial/agents/cs-lead-generation-strategist.md +12 -3
- package/squads/squad-commercial/agents/cs-offer-designer.md +12 -3
- package/squads/squad-commercial/agents/cs-revops-analyst.md +12 -3
- package/squads/squad-commercial/agents/cs-sales-closer.md +12 -3
- package/squads/squad-commercial/agents/cs-sales-enablement.md +12 -3
- package/squads/squad-commercial/agents/legal-chief.md +19 -189
- package/squads/squad-commercial/knowledge-base/chrome-brain-integration.md +17 -34
- package/squads/squad-commercial/knowledge-base/prospecting-pipeline-generation.md +1 -1
- package/squads/squad-commercial/knowledge-base/sales-revenue-master-reference.md +2 -2
- package/squads/squad-commercial/squad.yaml +25 -16
- package/squads/squad-commercial/tasks/build-nurture-sequences.md +1 -1
- package/squads/squad-commercial/tasks/coordinate-revenue-cycle.md +5 -5
- package/squads/squad-commercial/tasks/define-icp-profile.md +1 -1
- package/squads/squad-commercial/tasks/design-advocacy-program.md +1 -1
- package/squads/squad-commercial/tasks/design-lead-magnet.md +1 -1
- package/squads/squad-commercial/tasks/design-lead-magnets.md +2 -2
- package/squads/squad-commercial/tasks/manage-commercial-handoffs.md +5 -5
- package/squads/squad-commercial/tasks/map-content-to-funnel.md +4 -4
- package/squads/squad-commercial/tasks/run-productization-sprint.md +2 -2
- package/squads/squad-content/README.md +18 -6
- package/squads/squad-content/agents/content-analyst.md +9 -0
- package/squads/squad-content/agents/content-engineer.md +10 -1
- package/squads/squad-content/agents/content-governor.md +10 -1
- package/squads/squad-content/agents/content-orqx.md +13 -4
- package/squads/squad-content/agents/editorial-strategist.md +11 -2
- package/squads/squad-content/agents/platform-specialist.md +14 -5
- package/squads/squad-content/agents/signal-intelligence.md +9 -0
- package/squads/squad-content/checklists/onboarding-setup-checklist.md +2 -2
- package/squads/squad-content/knowledge-base/chrome-brain-integration.md +17 -38
- package/squads/squad-content/knowledge-base/content-strategy-master-reference.md +1 -1
- package/squads/squad-content/knowledge-base/cross-squad-integration-protocol.md +24 -24
- package/squads/squad-content/knowledge-base/social-algorithms-master-reference.md +1 -1
- package/squads/squad-content/squad.yaml +22 -11
- package/squads/squad-content/tasks/check-brand-consistency.md +2 -2
- package/squads/squad-content/tasks/coordinate-cross-squad.md +2 -2
- package/squads/squad-content/tasks/define-big-idea.md +2 -2
- package/squads/squad-content/tasks/define-content-standards.md +1 -1
- package/squads/squad-content/tasks/define-editorial-pillars.md +1 -1
- package/squads/squad-content/tasks/integrate-brand-visual-assets.md +3 -3
- package/squads/squad-content/tasks/update-content-preferences.md +1 -1
- package/squads/squad-content/workflows/onboarding-content-cycle.yaml +1 -1
- package/squads/squad-copy/README.md +18 -6
- package/squads/squad-copy/agents/ad-copywriter.md +13 -4
- package/squads/squad-copy/agents/andre-chaperon.md +9 -0
- package/squads/squad-copy/agents/ben-settle.md +9 -0
- package/squads/squad-copy/agents/brand-voice-writer.md +14 -5
- package/squads/squad-copy/agents/claude-hopkins.md +9 -0
- package/squads/squad-copy/agents/clayton-makepeace.md +9 -0
- package/squads/squad-copy/agents/conversion-writer.md +13 -4
- package/squads/squad-copy/agents/copy-chief.md +24 -152
- package/squads/squad-copy/agents/copy-editor.md +11 -2
- package/squads/squad-copy/agents/copy-orqx.md +10 -1
- package/squads/squad-copy/agents/copy-strategist.md +16 -7
- package/squads/squad-copy/agents/dan-kennedy.md +9 -0
- package/squads/squad-copy/agents/dan-koe.md +9 -0
- package/squads/squad-copy/agents/david-deutsch.md +9 -0
- package/squads/squad-copy/agents/david-ogilvy.md +9 -0
- package/squads/squad-copy/agents/direct-response-writer.md +13 -4
- package/squads/squad-copy/agents/email-sequence-strategist.md +13 -4
- package/squads/squad-copy/agents/eugene-schwartz.md +9 -0
- package/squads/squad-copy/agents/frank-kern.md +9 -0
- package/squads/squad-copy/agents/funnel-copywriter.md +13 -4
- package/squads/squad-copy/agents/gary-bencivenga.md +9 -0
- package/squads/squad-copy/agents/gary-halbert.md +9 -0
- package/squads/squad-copy/agents/headline-specialist.md +10 -1
- package/squads/squad-copy/agents/jim-rutz.md +9 -0
- package/squads/squad-copy/agents/joe-sugarman.md +9 -0
- package/squads/squad-copy/agents/john-carlton.md +9 -0
- package/squads/squad-copy/agents/jon-benson.md +9 -0
- package/squads/squad-copy/agents/long-form-writer.md +13 -4
- package/squads/squad-copy/agents/parris-lampropoulos.md +9 -0
- package/squads/squad-copy/agents/persuasion-psychologist.md +12 -3
- package/squads/squad-copy/agents/proof-architect.md +13 -4
- package/squads/squad-copy/agents/robert-collier.md +9 -0
- package/squads/squad-copy/agents/russell-brunson.md +9 -0
- package/squads/squad-copy/agents/ry-schwartz.md +9 -0
- package/squads/squad-copy/agents/stefan-georgi.md +9 -0
- package/squads/squad-copy/agents/todd-brown.md +9 -0
- package/squads/squad-copy/knowledge-base/chrome-brain-integration.md +17 -37
- package/squads/squad-copy/squad.yaml +49 -16
- package/squads/squad-copy/tasks/align-copy-strategy-with-brand.md +6 -6
- package/squads/squad-copy/tasks/approve-copy-for-release.md +1 -1
- package/squads/squad-copy/tasks/build-headline-swipe-file.md +1 -1
- package/squads/squad-copy/tasks/build-message-hierarchy.md +2 -2
- package/squads/squad-copy/tasks/conduct-copy-audit.md +1 -1
- package/squads/squad-copy/tasks/coordinate-multi-channel-copy.md +1 -1
- package/squads/squad-copy/tasks/craft-social-media-hooks.md +1 -1
- package/squads/squad-copy/tasks/create-brand-manifesto.md +1 -1
- package/squads/squad-copy/tasks/create-case-study-framework.md +3 -3
- package/squads/squad-copy/tasks/create-copy-brief.md +3 -3
- package/squads/squad-copy/tasks/create-ugc-script.md +3 -3
- package/squads/squad-copy/tasks/define-market-awareness-level.md +1 -1
- package/squads/squad-copy/tasks/design-headline-ab-tests.md +2 -2
- package/squads/squad-copy/tasks/develop-brand-voice.md +1 -1
- package/squads/squad-copy/tasks/map-objection-landscape.md +2 -2
- package/squads/squad-copy/tasks/optimize-email-engagement.md +2 -2
- package/squads/squad-copy/tasks/optimize-funnel-conversion-copy.md +3 -3
- package/squads/squad-copy/tasks/plan-multi-channel-copy.md +1 -1
- package/squads/squad-copy/tasks/write-ad-copy-variations.md +2 -2
- package/squads/squad-copy/tasks/write-funnel-copy-sequence.md +1 -1
- package/squads/squad-copy/tasks/write-video-podcast-titles.md +1 -1
- package/squads/squad-copy/workflows/brand-voice-development.yaml +1 -1
- package/squads/squad-council/README.md +18 -6
- package/squads/squad-council/agents/brene-brown.md +9 -0
- package/squads/squad-council/agents/charlie-munger.md +9 -0
- package/squads/squad-council/agents/council-orqx.md +12 -3
- package/squads/squad-council/agents/derek-sivers.md +9 -0
- package/squads/squad-council/agents/naval-ravikant.md +9 -0
- package/squads/squad-council/agents/patrick-lencioni.md +9 -0
- package/squads/squad-council/agents/peter-thiel.md +9 -0
- package/squads/squad-council/agents/ray-dalio.md +9 -0
- package/squads/squad-council/agents/reid-hoffman.md +9 -0
- package/squads/squad-council/agents/simon-sinek.md +9 -0
- package/squads/squad-council/agents/yvon-chouinard.md +9 -0
- package/squads/squad-council/knowledge-base/brand-strategy-models.md +2 -2
- package/squads/squad-council/knowledge-base/innovation-disruption-frameworks.md +1 -1
- package/squads/squad-council/knowledge-base/market-analysis-frameworks.md +1 -1
- package/squads/squad-council/squad.yaml +25 -20
- package/squads/squad-courses/README.md +18 -6
- package/squads/squad-courses/agents/assessment-creator.md +9 -0
- package/squads/squad-courses/agents/content-writer.md +9 -0
- package/squads/squad-courses/agents/courses-orqx.md +11 -2
- package/squads/squad-courses/agents/curriculum-designer.md +9 -0
- package/squads/squad-courses/agents/launch-strategist.md +9 -0
- package/squads/squad-courses/agents/lesson-architect.md +9 -0
- package/squads/squad-courses/agents/production-director.md +9 -0
- package/squads/squad-courses/agents/slide-designer.md +9 -0
- package/squads/squad-courses/knowledge-base/domain-advocacia-curriculum.md +1 -1
- package/squads/squad-courses/knowledge-base/domain-contabilidade-curriculum.md +1 -1
- package/squads/squad-courses/squad.yaml +21 -10
- package/squads/squad-courses/tasks/adapt-content-for-level.md +30 -22
- package/squads/squad-courses/tasks/adapt-slides-for-format.md +41 -23
- package/squads/squad-courses/tasks/create-bonus-strategy.md +34 -17
- package/squads/squad-courses/tasks/create-final-project-brief.md +48 -22
- package/squads/squad-courses/tasks/create-lesson-outline.md +34 -22
- package/squads/squad-courses/tasks/create-presentation-outline.md +40 -23
- package/squads/squad-courses/tasks/create-production-checklist.md +43 -28
- package/squads/squad-courses/tasks/create-progress-milestones.md +40 -22
- package/squads/squad-courses/tasks/create-quiz-questions.md +47 -22
- package/squads/squad-courses/tasks/create-sales-page-brief.md +36 -17
- package/squads/squad-courses/tasks/create-self-evaluation.md +41 -22
- package/squads/squad-courses/tasks/create-shot-list.md +41 -28
- package/squads/squad-courses/tasks/create-speaker-notes.md +43 -23
- package/squads/squad-courses/tasks/create-syllabus-document.md +35 -23
- package/squads/squad-courses/tasks/create-teleprompter-script.md +42 -28
- package/squads/squad-courses/tasks/create-workshop-materials.md +40 -23
- package/squads/squad-courses/tasks/define-competency-framework.md +42 -23
- package/squads/squad-courses/tasks/define-course-scope.md +36 -23
- package/squads/squad-courses/tasks/define-learning-outcomes.md +41 -23
- package/squads/squad-courses/tasks/define-lesson-objectives.md +35 -22
- package/squads/squad-courses/tasks/design-certification-criteria.md +43 -22
- package/squads/squad-courses/tasks/design-email-sequence.md +33 -17
- package/squads/squad-courses/tasks/design-interactive-elements.md +45 -23
- package/squads/squad-courses/tasks/design-intro-outro.md +38 -27
- package/squads/squad-courses/tasks/design-knowledge-checkpoints.md +36 -22
- package/squads/squad-courses/tasks/design-learning-path.md +40 -23
- package/squads/squad-courses/tasks/design-lesson-flow.md +40 -22
- package/squads/squad-courses/tasks/design-module-structure.md +37 -22
- package/squads/squad-courses/tasks/design-peer-review-rubric.md +40 -22
- package/squads/squad-courses/tasks/design-practical-assessment.md +45 -22
- package/squads/squad-courses/tasks/design-pricing-model.md +34 -17
- package/squads/squad-courses/tasks/design-screen-recording-flow.md +41 -28
- package/squads/squad-courses/tasks/design-slide-structure.md +40 -23
- package/squads/squad-courses/tasks/design-student-onboarding.md +34 -17
- package/squads/squad-courses/tasks/design-visual-hierarchy.md +42 -23
- package/squads/squad-courses/tasks/estimate-lesson-duration.md +35 -22
- package/squads/squad-courses/tasks/finalize-course-delivery.md +34 -23
- package/squads/squad-courses/tasks/initiate-course-project.md +38 -23
- package/squads/squad-courses/tasks/map-prerequisite-chain.md +41 -23
- package/squads/squad-courses/tasks/monitor-course-progress.md +34 -23
- package/squads/squad-courses/tasks/plan-b-roll-sequences.md +41 -28
- package/squads/squad-courses/tasks/plan-enrollment-funnel.md +35 -17
- package/squads/squad-courses/tasks/plan-launch-sequence.md +36 -17
- package/squads/squad-courses/tasks/plan-practical-exercises.md +36 -22
- package/squads/squad-courses/tasks/plan-recording-session.md +48 -28
- package/squads/squad-courses/tasks/proofread-course-content.md +30 -22
- package/squads/squad-courses/tasks/review-course-quality.md +34 -23
- package/squads/squad-courses/tasks/select-platform-strategy.md +35 -17
- package/squads/squad-courses/tasks/sequence-difficulty-progression.md +36 -22
- package/squads/squad-courses/tasks/structure-module-sequence.md +40 -23
- package/squads/squad-courses/tasks/validate-pedagogical-coherence.md +43 -23
- package/squads/squad-courses/tasks/write-case-studies.md +30 -22
- package/squads/squad-courses/tasks/write-ebook-chapter.md +30 -22
- package/squads/squad-courses/tasks/write-handout-material.md +30 -22
- package/squads/squad-courses/tasks/write-lesson-content.md +33 -22
- package/squads/squad-courses/tasks/write-slide-content.md +43 -23
- package/squads/squad-courses/tasks/write-summary-sheets.md +30 -22
- package/squads/squad-courses/tasks/write-video-script.md +42 -27
- package/squads/squad-courses/tasks/write-workbook-exercises.md +31 -22
- package/squads/squad-courses/workflows/course-quality-review.yaml +3 -3
- package/squads/squad-courses/workflows/full-course-creation.yaml +2 -2
- package/squads/squad-cybersecurity/README.md +18 -6
- package/squads/squad-cybersecurity/agents/cloud-security-engineer.md +9 -0
- package/squads/squad-cybersecurity/agents/compliance-officer.md +9 -0
- package/squads/squad-cybersecurity/agents/cyber-chief.md +24 -159
- package/squads/squad-cybersecurity/agents/cyber-orqx.md +11 -2
- package/squads/squad-cybersecurity/agents/incident-responder.md +9 -0
- package/squads/squad-cybersecurity/agents/network-security-engineer.md +9 -0
- package/squads/squad-cybersecurity/agents/penetration-tester.md +9 -0
- package/squads/squad-cybersecurity/agents/soc-analyst.md +9 -0
- package/squads/squad-cybersecurity/agents/threat-analyst.md +9 -0
- package/squads/squad-cybersecurity/knowledge-base/chrome-brain-integration.md +17 -35
- package/squads/squad-cybersecurity/knowledge-base/routing-catalog.md +22 -22
- package/squads/squad-cybersecurity/squad.yaml +23 -9
- package/squads/squad-design/README.md +18 -6
- package/squads/squad-design/agents/brad-frost.md +14 -29
- package/squads/squad-design/agents/dan-mall.md +13 -26
- package/squads/squad-design/agents/dave-malouf.md +13 -26
- package/squads/squad-design/agents/design-chief.md +24 -216
- package/squads/squad-design/agents/design-orqx.md +11 -2
- package/squads/squad-design/agents/dx-accessibility-specialist.md +9 -0
- package/squads/squad-design/agents/dx-design-system-architect.md +9 -0
- package/squads/squad-design/agents/dx-frontend-engineer.md +9 -0
- package/squads/squad-design/agents/dx-interaction-designer.md +9 -0
- package/squads/squad-design/agents/dx-performance-engineer.md +9 -0
- package/squads/squad-design/agents/dx-ui-designer.md +9 -0
- package/squads/squad-design/agents/dx-ux-strategist.md +9 -0
- package/squads/squad-design/agents/nano-banana-generator.md +13 -25
- package/squads/squad-design/knowledge-base/brazilian-design-context.md +1 -1
- package/squads/squad-design/knowledge-base/chrome-brain-integration.md +17 -43
- package/squads/squad-design/knowledge-base/design-system-master-reference.md +1 -1
- package/squads/squad-design/knowledge-base/design-to-code-pipeline.md +1 -1
- package/squads/squad-design/knowledge-base/designops-maturity.md +1 -1
- package/squads/squad-design/knowledge-base/famous-design-systems-study.md +1 -1
- package/squads/squad-design/squad.yaml +26 -16
- package/squads/squad-engineering/README.md +82 -0
- package/squads/squad-engineering/agents/eng-architect.md +61 -0
- package/squads/squad-engineering/agents/eng-data.md +50 -0
- package/squads/squad-engineering/agents/eng-dev.md +64 -0
- package/squads/squad-engineering/agents/eng-devops.md +51 -0
- package/squads/squad-engineering/agents/eng-orqx.md +114 -0
- package/squads/squad-engineering/agents/eng-product.md +57 -0
- package/squads/squad-engineering/agents/eng-qa.md +49 -0
- package/squads/squad-engineering/agents/eng-sprint.md +57 -0
- package/squads/squad-engineering/checklists/dod.md +18 -0
- package/squads/squad-engineering/checklists/pre-publicacao.md +14 -0
- package/squads/squad-engineering/knowledge-base/doc-first-na-medida.md +46 -0
- package/squads/squad-engineering/knowledge-base/escada-e-cargos.md +61 -0
- package/squads/squad-engineering/knowledge-base/memoria-por-cargo.md +39 -0
- package/squads/squad-engineering/knowledge-base/seguranca-minima.md +30 -0
- package/squads/squad-engineering/knowledge-base/stack-por-tipo.md +30 -0
- package/squads/squad-engineering/knowledge-base/story-como-contrato.md +30 -0
- package/squads/squad-engineering/preferences/README.md +49 -0
- package/squads/squad-engineering/squad.yaml +202 -0
- package/squads/squad-engineering/tasks/classify-track.md +43 -0
- package/squads/squad-engineering/tasks/develop-story.md +43 -0
- package/squads/squad-engineering/tasks/draft-stories.md +46 -0
- package/squads/squad-engineering/tasks/initial-state-audit.md +55 -0
- package/squads/squad-engineering/tasks/operate-gate-code.md +52 -0
- package/squads/squad-engineering/tasks/plan-orchestration.md +35 -0
- package/squads/squad-engineering/tasks/prepare-environment.md +29 -0
- package/squads/squad-engineering/tasks/publish.md +32 -0
- package/squads/squad-engineering/tasks/run-retro.md +36 -0
- package/squads/squad-engineering/tasks/verify-dod.md +27 -0
- package/squads/squad-engineering/tasks/verify-track-after-diff.md +33 -0
- package/squads/squad-engineering/tasks/write-adr.md +29 -0
- package/squads/squad-engineering/tasks/write-architecture.md +44 -0
- package/squads/squad-engineering/tasks/write-brief.md +42 -0
- package/squads/squad-engineering/tasks/write-migration.md +31 -0
- package/squads/squad-engineering/tasks/write-prd.md +44 -0
- package/squads/squad-engineering/templates/adr-template.md +13 -0
- package/squads/squad-engineering/templates/arquitetura-template.md +43 -0
- package/squads/squad-engineering/templates/brief-template.md +34 -0
- package/squads/squad-engineering/templates/checklist-pre-publicacao-template.md +29 -0
- package/squads/squad-engineering/templates/estado-inicial-template.md +26 -0
- package/squads/squad-engineering/templates/memoria-do-cargo-template.md +32 -0
- package/squads/squad-engineering/templates/plano-de-orquestracao-template.md +20 -0
- package/squads/squad-engineering/templates/prd-template.md +41 -0
- package/squads/squad-engineering/templates/story-template.md +69 -0
- package/squads/squad-engineering/workflows/ajuste-cycle.yaml +75 -0
- package/squads/squad-engineering/workflows/feature-cycle.yaml +112 -0
- package/squads/squad-engineering/workflows/projeto-cycle.yaml +137 -0
- package/squads/squad-finance/README.md +18 -6
- package/squads/squad-finance/agents/budget-controller.md +9 -0
- package/squads/squad-finance/agents/finance-orqx.md +11 -2
- package/squads/squad-finance/agents/pricing-strategist.md +9 -0
- package/squads/squad-finance/agents/profitability-analyst.md +9 -0
- package/squads/squad-finance/agents/revenue-analyst.md +9 -0
- package/squads/squad-finance/knowledge-base/contabilidade-master-reference.md +1 -1
- package/squads/squad-finance/knowledge-base/finance-master-reference.md +1 -1
- package/squads/squad-finance/squad.yaml +18 -9
- package/squads/squad-growth/README.md +18 -6
- package/squads/squad-growth/agents/ga-analytics-engineer.md +9 -0
- package/squads/squad-growth/agents/ga-campaign-analyst.md +9 -0
- package/squads/squad-growth/agents/ga-cro-specialist.md +9 -0
- package/squads/squad-growth/agents/ga-data-analyst.md +9 -0
- package/squads/squad-growth/agents/ga-growth-hacker.md +9 -0
- package/squads/squad-growth/agents/ga-seo-strategist.md +9 -0
- package/squads/squad-growth/agents/growth-orqx.md +14 -5
- package/squads/squad-growth/knowledge-base/chrome-brain-integration.md +17 -38
- package/squads/squad-growth/squad.yaml +21 -16
- package/squads/squad-paidmedia/README.md +18 -6
- package/squads/squad-paidmedia/agents/campaign-analyst.md +9 -0
- package/squads/squad-paidmedia/agents/creative-strategist.md +9 -0
- package/squads/squad-paidmedia/agents/cro-specialist.md +9 -0
- package/squads/squad-paidmedia/agents/depesh-mandalia.md +9 -0
- package/squads/squad-paidmedia/agents/google-ads-specialist.md +9 -0
- package/squads/squad-paidmedia/agents/kasim-aslam.md +9 -0
- package/squads/squad-paidmedia/agents/meta-ads-specialist.md +9 -0
- package/squads/squad-paidmedia/agents/molly-pittman.md +9 -0
- package/squads/squad-paidmedia/agents/nicholas-kusmich.md +9 -0
- package/squads/squad-paidmedia/agents/paidmedia-orqx.md +11 -2
- package/squads/squad-paidmedia/agents/pedro-sobral.md +9 -0
- package/squads/squad-paidmedia/agents/performance-engineer.md +9 -0
- package/squads/squad-paidmedia/agents/pm-creative-performance-analyst.md +13 -4
- package/squads/squad-paidmedia/agents/pm-youtube-ads-specialist.md +12 -3
- package/squads/squad-paidmedia/agents/ralph-burns.md +9 -0
- package/squads/squad-paidmedia/agents/tom-breeze.md +9 -0
- package/squads/squad-paidmedia/agents/traffic-masters-chief.md +19 -201
- package/squads/squad-paidmedia/knowledge-base/chrome-brain-integration.md +17 -40
- package/squads/squad-paidmedia/squad.yaml +29 -7
- package/squads/squad-paidmedia/tasks/design-youtube-ad-campaign.md +2 -2
- package/squads/squad-product/README.md +18 -6
- package/squads/squad-product/agents/product-orqx.md +12 -4
- package/squads/squad-product/agents/ps-client-product-manager.md +9 -1
- package/squads/squad-product/agents/ps-delivery-manager.md +9 -1
- package/squads/squad-product/agents/ps-discovery-lead.md +9 -1
- package/squads/squad-product/agents/ps-product-analyst.md +9 -1
- package/squads/squad-product/agents/ps-product-ops-specialist.md +9 -1
- package/squads/squad-product/agents/ps-product-strategist.md +9 -1
- package/squads/squad-product/knowledge-base/chrome-brain-integration.md +17 -42
- package/squads/squad-product/squad.yaml +21 -16
- package/squads/squad-product/tasks/define-product-okrs.md +1 -1
- package/squads/squad-product/tasks/define-product-vision.md +1 -1
- package/squads/squad-research/README.md +18 -6
- package/squads/squad-research/agents/audience-intelligence.md +11 -2
- package/squads/squad-research/agents/competitive-intelligence.md +11 -2
- package/squads/squad-research/agents/data-chief.md +24 -188
- package/squads/squad-research/agents/data-synthesizer.md +9 -0
- package/squads/squad-research/agents/deep-researcher.md +9 -0
- package/squads/squad-research/agents/market-analyst.md +10 -1
- package/squads/squad-research/agents/research-orqx.md +13 -4
- package/squads/squad-research/agents/trend-forecaster.md +10 -1
- package/squads/squad-research/knowledge-base/agentic-second-brain-reference.md +2 -2
- package/squads/squad-research/knowledge-base/brazilian-market-research-sources.md +1 -1
- package/squads/squad-research/knowledge-base/chrome-brain-integration.md +17 -34
- package/squads/squad-research/knowledge-base/cross-squad-integration-protocol.md +7 -7
- package/squads/squad-research/knowledge-base/multi-agent-research-methodology.md +1 -1
- package/squads/squad-research/knowledge-base/research-synthesis-frameworks.md +1 -1
- package/squads/squad-research/preferences/README.md +7 -7
- package/squads/squad-research/squad.yaml +32 -20
- package/squads/squad-research/tasks/analyze-audience-psychographics.md +1 -1
- package/squads/squad-research/tasks/analyze-competitor-positioning.md +1 -1
- package/squads/squad-research/tasks/analyze-competitor-pricing.md +2 -2
- package/squads/squad-research/tasks/analyze-industry-trends.md +1 -1
- package/squads/squad-research/tasks/analyze-pricing-landscape.md +1 -1
- package/squads/squad-research/tasks/analyze-social-listening.md +1 -1
- package/squads/squad-research/tasks/analyze-value-chain.md +1 -1
- package/squads/squad-research/tasks/benchmark-competitor-digital.md +3 -3
- package/squads/squad-research/tasks/build-audience-persona.md +6 -6
- package/squads/squad-research/tasks/build-data-narrative.md +1 -1
- package/squads/squad-research/tasks/compile-competitive-dossier.md +4 -4
- package/squads/squad-research/tasks/conduct-jobs-to-be-done.md +5 -5
- package/squads/squad-research/tasks/coordinate-cross-squad-research.md +6 -6
- package/squads/squad-research/tasks/create-battle-card.md +3 -3
- package/squads/squad-research/tasks/create-executive-briefing.md +1 -1
- package/squads/squad-research/tasks/create-future-landscape.md +4 -4
- package/squads/squad-research/tasks/create-insight-deck.md +1 -1
- package/squads/squad-research/tasks/create-swot-analysis.md +4 -4
- package/squads/squad-research/tasks/detect-weak-signals.md +3 -3
- package/squads/squad-research/tasks/evaluate-market-entry.md +1 -1
- package/squads/squad-research/tasks/forecast-industry-trends.md +4 -4
- package/squads/squad-research/tasks/forecast-market-growth.md +1 -1
- package/squads/squad-research/tasks/generate-actionable-recommendations.md +3 -3
- package/squads/squad-research/tasks/identify-competitive-gaps.md +1 -1
- package/squads/squad-research/tasks/identify-inflection-points.md +3 -3
- package/squads/squad-research/tasks/identify-market-segments.md +1 -1
- package/squads/squad-research/tasks/manage-research-sprint.md +1 -1
- package/squads/squad-research/tasks/map-audience-ecosystem.md +1 -1
- package/squads/squad-research/tasks/map-audience-journey.md +4 -4
- package/squads/squad-research/tasks/map-competitive-landscape.md +3 -3
- package/squads/squad-research/tasks/map-strategic-implications.md +4 -4
- package/squads/squad-research/tasks/map-technology-adoption.md +3 -3
- package/squads/squad-research/tasks/orchestrate-research-pipeline.md +2 -2
- package/squads/squad-research/tasks/predict-market-shifts.md +1 -1
- package/squads/squad-research/tasks/profile-ideal-customer.md +4 -4
- package/squads/squad-research/tasks/run-porter-five-forces.md +1 -1
- package/squads/squad-research/tasks/run-scenario-planning.md +3 -3
- package/squads/squad-research/tasks/segment-audience.md +1 -1
- package/squads/squad-research/tasks/size-market-tam-sam-som.md +4 -4
- package/squads/squad-research/tasks/synthesize-research-report.md +4 -4
- package/squads/squad-research/tasks/track-emerging-technologies.md +3 -3
- package/squads/squad-research/tasks/visualize-research-data.md +1 -1
- package/squads/squad-research/workflows/audience-intelligence-cycle.yaml +4 -4
- package/squads/squad-research/workflows/competitive-intelligence-cycle.yaml +3 -3
- package/squads/squad-research/workflows/deep-research-cycle.yaml +3 -3
- package/squads/squad-research/workflows/full-research-sprint.yaml +7 -7
- package/squads/squad-research/workflows/market-analysis-cycle.yaml +3 -3
- package/squads/squad-research/workflows/trend-forecasting-cycle.yaml +3 -3
- package/squads/squad-storytelling/README.md +18 -6
- package/squads/squad-storytelling/agents/blake-snyder.md +9 -0
- package/squads/squad-storytelling/agents/dan-harmon.md +9 -0
- package/squads/squad-storytelling/agents/joseph-campbell.md +9 -0
- package/squads/squad-storytelling/agents/keith-johnstone.md +9 -0
- package/squads/squad-storytelling/agents/kindra-hall.md +9 -0
- package/squads/squad-storytelling/agents/marshall-ganz.md +9 -0
- package/squads/squad-storytelling/agents/matthew-dicks.md +9 -0
- package/squads/squad-storytelling/agents/nancy-duarte.md +9 -0
- package/squads/squad-storytelling/agents/oren-klaff.md +9 -0
- package/squads/squad-storytelling/agents/park-howell.md +9 -0
- package/squads/squad-storytelling/agents/shawn-coyne.md +9 -0
- package/squads/squad-storytelling/agents/story-chief.md +24 -170
- package/squads/squad-storytelling/agents/storytelling-orqx.md +12 -3
- package/squads/squad-storytelling/knowledge-base/chrome-brain-integration.md +17 -34
- package/squads/squad-storytelling/squad.yaml +28 -10
- package/agents/iron-orqx.md +0 -211
- package/bin/cli.js +0 -261
- package/squads/squad-claude/agents/db-sage.md +0 -152
- package/squads/squad-claude/agents/tools-orqx.md +0 -219
- package/squads/squad-cloning/agents/sop-extractor.md +0 -61
- package/squads/squad-design/agents/design-system.md +0 -210
- package/squads/squad-design/agents/ux-designer.md +0 -124
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* distill.mjs — transforma um inventory.json (do clone-inventory) nos
|
|
4
|
+
* placeholders que o lp-cinematico consome.
|
|
5
|
+
*
|
|
6
|
+
* O lp-cinematico NÃO lê @theme cru. Ele tem 4 cores em HSL triplet
|
|
7
|
+
* ({{COLOR_INK/CREAM/OCHRE/TERRA}}) + 2 famílias Google Font
|
|
8
|
+
* ({{FONT_DISPLAY/BODY}}), e monta o @theme a partir disso. Este script
|
|
9
|
+
* preenche essa tabela, medido da referência, sem inventar.
|
|
10
|
+
*
|
|
11
|
+
* Uso: node distill.mjs <inventory.json> [--out tokens.md]
|
|
12
|
+
*/
|
|
13
|
+
import { readFile, writeFile } from 'node:fs/promises';
|
|
14
|
+
|
|
15
|
+
const argv = process.argv.slice(2);
|
|
16
|
+
const inPath = argv[0];
|
|
17
|
+
if (!inPath || inPath.startsWith('--')) { console.error('uso: node distill.mjs <inventory.json> [--out tokens.md]'); process.exit(2); }
|
|
18
|
+
const optOut = (() => { const i = argv.indexOf('--out'); return i !== -1 ? argv[i + 1] : ''; })();
|
|
19
|
+
|
|
20
|
+
// ---------------------------------------------------------------- cor utils
|
|
21
|
+
function parseHex(h) { if (!h) return null; const m = String(h).trim().match(/^#?([0-9a-fA-F]{6})$/); if (!m) return null; const x = m[1]; return { r: parseInt(x.slice(0, 2), 16), g: parseInt(x.slice(2, 4), 16), b: parseInt(x.slice(4, 6), 16) }; }
|
|
22
|
+
function toHsl({ r, g, b }) { r /= 255; g /= 255; b /= 255; const mx = Math.max(r, g, b), mn = Math.min(r, g, b), d = mx - mn; let h = 0; const l = (mx + mn) / 2; const s = d === 0 ? 0 : d / (1 - Math.abs(2 * l - 1)); if (d) { if (mx === r) h = ((g - b) / d) % 6; else if (mx === g) h = (b - r) / d + 2; else h = (r - g) / d + 4; h *= 60; if (h < 0) h += 360; } return { h, s, l }; }
|
|
23
|
+
const triplet = (hex) => { const c = parseHex(hex); if (!c) return null; const { h, s, l } = toHsl(c); return `${Math.round(h)} ${Math.round(s * 100)}% ${Math.round(l * 100)}%`; };
|
|
24
|
+
const lum = (hex) => { const c = parseHex(hex); if (!c) return 0.5; return toHsl(c).l; };
|
|
25
|
+
const chroma = (hex) => { const c = parseHex(hex); if (!c) return 0; return Math.max(c.r, c.g, c.b) - Math.min(c.r, c.g, c.b); };
|
|
26
|
+
const isBrand = (hex) => { const c = parseHex(hex); if (!c) return false; return chroma(hex) >= 40 && toHsl(c).s >= 0.25; };
|
|
27
|
+
// clareia um hex mantendo o matiz (derivação por luminosidade — nunca inventa matiz)
|
|
28
|
+
function lighten(hex, dl) { const c = parseHex(hex); if (!c) return hex; let { h, s, l } = toHsl(c); l = Math.min(0.92, l + dl); s = Math.min(1, s * 0.9); const a = s * Math.min(l, 1 - l); const f = n => { const k = (n + h / 30) % 12; return Math.round(255 * (l - a * Math.max(-1, Math.min(k - 3, 9 - k, 1)))); }; return '#' + [f(0), f(8), f(4)].map(x => Math.max(0, Math.min(255, x)).toString(16).padStart(2, '0')).join(''); }
|
|
29
|
+
|
|
30
|
+
// ---------------------------------------------------------------- Google Fonts (allowlist p/ detectar fonte comercial)
|
|
31
|
+
// Google Fonts conhecidas (amostra; a lista real tem 1500+, então NÃO tratamos
|
|
32
|
+
// "fora da lista" como comercial — ver fontLine).
|
|
33
|
+
const GOOGLE = new Set(['inter', 'roboto', 'open sans', 'lato', 'montserrat', 'poppins', 'raleway', 'oswald', 'merriweather', 'playfair display', 'lora', 'work sans', 'dm sans', 'dm serif display', 'space grotesk', 'space mono', 'nunito', 'nunito sans', 'source sans 3', 'source serif 4', 'source code pro', 'ibm plex sans', 'ibm plex serif', 'ibm plex mono', 'manrope', 'figtree', 'plus jakarta sans', 'sora', 'outfit', 'archivo', 'libre franklin', 'libre baskerville', 'cormorant', 'cormorant garamond', 'josefin sans', 'karla', 'rubik', 'mulish', 'bitter', 'crimson text', 'epilogue', 'red hat display', 'urbanist', 'jost', 'fraunces', 'bricolage grotesque', 'instrument sans', 'geist', 'onest', 'questrial', 'cinzel', 'great vibes', 'syne', 'unbounded', 'schibsted grotesk', 'hanken grotesk', 'gantari', 'anton', 'bebas neue', 'archivo black', 'league spartan']);
|
|
34
|
+
// fontes comerciais reconhecidas (não estão no Google). Denylist é sustentável;
|
|
35
|
+
// allowlist de todas as Google não é.
|
|
36
|
+
const COMMERCIAL = /söhne|sohne|circular|graphik|gt[\s-]|neue haas|aeonik|founders grotesk|tiempos|canela|reckless|druk|sharp grotesk|pp[\s-]?neue|suisse|styrene|maison neue|national\b|larish|monument|calibre|tobias|riforma/;
|
|
37
|
+
const norm = s => String(s || '').toLowerCase().replace(/["']/g, '').replace(/\s+(variable|var)$/, '').trim();
|
|
38
|
+
function suggestGoogle(n) {
|
|
39
|
+
if (/gt |canela|tiempos|reckless|freight|garamond|serif/.test(n)) return 'Cormorant Garamond';
|
|
40
|
+
if (/mono|berkeley|jetbrains/.test(n)) return 'Space Mono';
|
|
41
|
+
return 'Inter';
|
|
42
|
+
}
|
|
43
|
+
function fontLine(role, fam) {
|
|
44
|
+
const n = norm(fam);
|
|
45
|
+
const clean = fam.replace(/\s+(Variable|Var)$/i, '').trim();
|
|
46
|
+
if (GOOGLE.has(n)) return { role, medida: fam, usar: clean, aviso: null };
|
|
47
|
+
if (COMMERCIAL.test(n)) { const s = suggestGoogle(n); return { role, medida: fam, usar: s, aviso: `"${fam}" é comercial (não-Google); lp-cinematico carrega via @fontsource. Sugerido: ${s}. Confirme ou troque.` }; }
|
|
48
|
+
// desconhecida: benefício da dúvida — usa a própria, mas manda confirmar (não
|
|
49
|
+
// afirma troca errada, como aconteceu com Questrial, que É Google Font).
|
|
50
|
+
return { role, medida: fam, usar: clean, aviso: `"${fam}" não está na lista conhecida. Confirme em fonts.google.com; se não existir lá, escolha uma substituta.` };
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
// ---------------------------------------------------------------- mapeamento
|
|
54
|
+
function distill(inv) {
|
|
55
|
+
const c = inv.cores || {};
|
|
56
|
+
const uniq = a => [...new Set(a)];
|
|
57
|
+
const all = uniq(['fundo', 'texto', 'superficie', 'primaria', 'acento', 'borda'].map(k => c[k]?.hex).filter(h => h && parseHex(h)));
|
|
58
|
+
|
|
59
|
+
// INK = a mais escura da paleta (lum<0.35). Aceita um navy quase-preto com
|
|
60
|
+
// matiz (#0d1738), que no modelo do lp-cinematico é a "tinta", não um acento.
|
|
61
|
+
const dark = all.filter(h => lum(h) < 0.35).sort((a, b) => lum(a) - lum(b));
|
|
62
|
+
const ink = dark[0] || all.slice().sort((a, b) => lum(a) - lum(b))[0] || '#0a0a0a';
|
|
63
|
+
// CREAM = a NEUTRA mais clara (lum>0.6). Neutra evita pegar um amarelo-lima
|
|
64
|
+
// claro (#e4f222) como se fosse creme.
|
|
65
|
+
const lightNeutral = all.filter(h => !isBrand(h) && lum(h) > 0.6).sort((a, b) => lum(b) - lum(a));
|
|
66
|
+
const cream = lightNeutral[0] || all.filter(h => !isBrand(h)).sort((a, b) => lum(b) - lum(a))[0] || '#f5f2ec';
|
|
67
|
+
|
|
68
|
+
// TERRA/OCHRE = cores de marca que NÃO foram usadas como ink. Confia na
|
|
69
|
+
// classificação primária/acento do inventário; deriva o ochre se faltar 2ª cor.
|
|
70
|
+
const marcas = all.filter(h => isBrand(h) && h !== ink);
|
|
71
|
+
const terra = (c.primaria?.hex && isBrand(c.primaria.hex) && c.primaria.hex !== ink) ? c.primaria.hex : (marcas[0] || null);
|
|
72
|
+
let ochre = (c.acento?.hex && isBrand(c.acento.hex) && ![terra, ink].includes(c.acento.hex)) ? c.acento.hex : (marcas.find(h => ![terra, ink].includes(h)) || null);
|
|
73
|
+
let ochreDerivada = false;
|
|
74
|
+
if (!ochre && terra) { ochre = lighten(terra, 0.22); ochreDerivada = true; }
|
|
75
|
+
|
|
76
|
+
const t = inv.tipografia || {};
|
|
77
|
+
const fDisplay = fontLine('display', t.display?.familia || t.corpo?.familia || 'Inter');
|
|
78
|
+
const fBody = fontLine('body', t.corpo?.familia || 'Inter');
|
|
79
|
+
|
|
80
|
+
return { ink, cream, terra, ochre, ochreDerivada, paletaVazia: all.length === 0, fDisplay, fBody, escala: t.razao_escala, raio: inv.raio?.principal, sombraColorida: inv.sombra?.colorida, contraste: inv.contraste_original };
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
// ---------------------------------------------------------------- render
|
|
84
|
+
function render(inv, d) {
|
|
85
|
+
const L = [];
|
|
86
|
+
const avisos = [];
|
|
87
|
+
L.push(`# Tokens destilados — pronto pro lp-cinematico`);
|
|
88
|
+
L.push(`> fonte: ${inv.fonte} · medido: ${inv.medidoEm} · viewport: ${inv.viewport}\n`);
|
|
89
|
+
|
|
90
|
+
L.push(`## Placeholders do lp-cinematico (cole na tabela dele)\n`);
|
|
91
|
+
L.push('| Placeholder | Valor (HSL triplet) | Hex medido |');
|
|
92
|
+
L.push('|---|---|---|');
|
|
93
|
+
const row = (ph, hex) => `| \`${ph}\` | \`${hex ? triplet(hex) : '—'}\` | ${hex || '—'} |`;
|
|
94
|
+
L.push(row('{{COLOR_INK}}', d.ink));
|
|
95
|
+
L.push(row('{{COLOR_CREAM}}', d.cream));
|
|
96
|
+
L.push(row('{{COLOR_TERRA}}', d.terra));
|
|
97
|
+
L.push(row('{{COLOR_OCHRE}}', d.ochre));
|
|
98
|
+
L.push('');
|
|
99
|
+
L.push('| Placeholder | Usar | Medido na referência |');
|
|
100
|
+
L.push('|---|---|---|');
|
|
101
|
+
L.push(`| \`{{FONT_DISPLAY}}\` | ${d.fDisplay.usar} | ${d.fDisplay.medida} |`);
|
|
102
|
+
L.push(`| \`{{FONT_BODY}}\` | ${d.fBody.usar} | ${d.fBody.medida} |`);
|
|
103
|
+
L.push('');
|
|
104
|
+
|
|
105
|
+
L.push(`## :root do lp-cinematico (valores prontos)\n`);
|
|
106
|
+
L.push('```css');
|
|
107
|
+
L.push(':root {');
|
|
108
|
+
L.push(` --ink: ${triplet(d.ink)};`);
|
|
109
|
+
L.push(` --cream: ${triplet(d.cream)};`);
|
|
110
|
+
if (d.ochre) L.push(` --ochre: ${triplet(d.ochre)};`);
|
|
111
|
+
if (d.terra) L.push(` --terra: ${triplet(d.terra)};`);
|
|
112
|
+
L.push(` /* raio medido: ${d.raio == null ? '—' : d.raio >= 9999 ? '9999px (pill)' : d.raio + 'px'} — o lp-cinematico tem --radius FIXO no template, não é placeholder. Ajuste lá à mão se quiser este valor. */`);
|
|
113
|
+
L.push(` --font-display: "${d.fDisplay.usar}", sans-serif;`);
|
|
114
|
+
L.push(` --font-body: "${d.fBody.usar}", system-ui, sans-serif;`);
|
|
115
|
+
L.push('}');
|
|
116
|
+
L.push('```\n');
|
|
117
|
+
|
|
118
|
+
L.push(`## Sinais de caráter (o que faz não parecer IA)\n`);
|
|
119
|
+
L.push(`- **Razão de escala:** ${d.escala ?? '—'} ${d.escala >= 2.5 ? '(editorial, salto grande)' : d.escala ? '(moderada)' : ''}`);
|
|
120
|
+
L.push(`- **Raio principal:** ${d.raio != null ? d.raio + 'px' : '—'}`);
|
|
121
|
+
L.push(`- **Sombra colorida:** ${d.sombraColorida ? 'sim (decisão de marca — replicar)' : 'não (neutra)'}`);
|
|
122
|
+
L.push(`- **Contraste do original:** ${d.contraste?.texto_sobre_fundo ?? '—'}:1`);
|
|
123
|
+
L.push('');
|
|
124
|
+
|
|
125
|
+
// avisos (regra: não inventar em silêncio)
|
|
126
|
+
if (d.fDisplay.aviso) avisos.push(d.fDisplay.aviso);
|
|
127
|
+
if (d.fBody.aviso && d.fBody.aviso !== d.fDisplay.aviso) avisos.push(d.fBody.aviso);
|
|
128
|
+
if (d.paletaVazia) avisos.push(`⚠️ A referência não tinha NENHUMA cor medida (inventário vazio). {{COLOR_INK}}/{{COLOR_CREAM}} saíram em valores PADRÃO, não medidos — não confie neles, confira a URL de origem.`);
|
|
129
|
+
if (d.ochreDerivada) avisos.push(`{{COLOR_OCHRE}} foi DERIVADA da terra (clareada), a referência não tinha 2ª cor de marca. Matiz preservado, luminosidade ajustada.`);
|
|
130
|
+
if (!d.terra) avisos.push(`A referência não tem cor de marca saturada (paleta neutra). {{COLOR_TERRA}}/{{OCHRE}} ficaram vazios — defina a cor do cliente.`);
|
|
131
|
+
if (d.contraste && !d.contraste.passa_AA_corpo) avisos.push(`O próprio original já reprova AA de corpo (${d.contraste.texto_sobre_fundo}:1). Não herde esse par ink/cream sem checar.`);
|
|
132
|
+
if (avisos.length) { L.push(`## ⚠️ Decisões que exigem sua confirmação\n`); avisos.forEach(a => L.push(`- ${a}`)); L.push(''); }
|
|
133
|
+
else { L.push(`## ✓ Sem pendências — tokens prontos pra colar\n`); }
|
|
134
|
+
|
|
135
|
+
return L.join('\n');
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
(async () => {
|
|
139
|
+
const inv = JSON.parse(await readFile(inPath, 'utf8'));
|
|
140
|
+
const d = distill(inv);
|
|
141
|
+
const md = render(inv, d);
|
|
142
|
+
if (optOut) { await writeFile(optOut, md); console.error('[distill] salvo em', optOut); }
|
|
143
|
+
process.stdout.write(md + '\n');
|
|
144
|
+
})().catch(e => { console.error('[distill] FALHA:', e.message); process.exit(1); });
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: clone-inventory
|
|
3
|
+
description: Mede as decisões visuais de uma página (cores por papel, tipografia e escala, espaçamento, raio, sombra, ritmo de seções, botão) abrindo-a no navegador e lendo o getComputedStyle real. Gera um inventory.json. Núcleo compartilhado do transplante de marca e da destilação pro lp-cinematico. Use quando o usuário mandar uma URL e pedir para extrair o DNA visual, o design system, a paleta, a tipografia ou o "estilo" de uma página de referência.
|
|
4
|
+
argument-hint: [url] [--out arquivo.json] [--mobile]
|
|
5
|
+
allowed-tools: Bash(node ${CLAUDE_SKILL_DIR}/scripts/inventory.mjs *), Read, Write
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# clone-inventory — o DNA visual medido, não estimado
|
|
9
|
+
|
|
10
|
+
> **1ª execução:** esta skill depende de Node 18+ e de pacotes npm (Playwright). Se `node_modules/` não existir na pasta da skill, rode antes: `cd ${CLAUDE_SKILL_DIR} && npm install && npx playwright install chromium`.
|
|
11
|
+
|
|
12
|
+
Abre a página no Chromium, roda `getComputedStyle` sobre o DOM real e agrega por
|
|
13
|
+
frequência e área. **Não lê o CSS e não pergunta ao modelo** — com Tailwind o
|
|
14
|
+
valor só existe depois de computado, e estimativa alucina. O que sai é medido.
|
|
15
|
+
|
|
16
|
+
## Quando usar
|
|
17
|
+
- Usuário aponta para uma referência linda e quer o vocabulário visual dela.
|
|
18
|
+
- Antes de um transplante de marca (o inventário diz *o que* trocar).
|
|
19
|
+
- Antes de gerar uma página nova no `lp-cinematico` (o inventário vira `@theme`).
|
|
20
|
+
|
|
21
|
+
## Como rodar
|
|
22
|
+
```bash
|
|
23
|
+
node ${CLAUDE_SKILL_DIR}/scripts/inventory.mjs "<URL>" --out "<pasta>/inventory.json"
|
|
24
|
+
```
|
|
25
|
+
Roda na URL ao vivo (não precisa clonar antes) ou num `index.html` local servido.
|
|
26
|
+
Flags: `--mobile` (viewport 390), `--wait MS` (espera extra por página lenta).
|
|
27
|
+
|
|
28
|
+
## O que ele mede
|
|
29
|
+
| Dimensão | Saída |
|
|
30
|
+
|---|---|
|
|
31
|
+
| Cores por papel | fundo, texto, superfície, primária, acento, borda (com frequência) |
|
|
32
|
+
| Tipografia | display, corpo, famílias, e a **razão de escala** (o caráter) |
|
|
33
|
+
| Espaçamento | passo-base + se é default do Tailwind (múltiplo de 8) |
|
|
34
|
+
| Raio | principal + distribuição |
|
|
35
|
+
| Sombra | valor + se é **colorida** (decisão) ou preta (default) |
|
|
36
|
+
| Ritmo | altura e densidade por seção (humano alterna, IA empilha) |
|
|
37
|
+
| Botão | altura, padding, raio, peso, tamanho de fonte |
|
|
38
|
+
| Contraste | razão texto/fundo do original (baseline pro transplante) |
|
|
39
|
+
|
|
40
|
+
## Regras
|
|
41
|
+
- **Cor classificada por papel, não por posição.** Fundo é a cor de maior área;
|
|
42
|
+
texto é a de maior peso de texto; marca é a saturada de verdade (croma alto).
|
|
43
|
+
Funciona em página clara e escura (inverte os papéis sozinho).
|
|
44
|
+
- **Neutro vs marca por croma absoluto, não saturação HSL** — em luminância
|
|
45
|
+
extrema o HSL infla e um cinza-clarinho passa por cor. O croma RGB não mente.
|
|
46
|
+
- **Nada é inventado.** Campo que a página não tem sai `null`, não um chute.
|
|
47
|
+
- O `inventory.json` é o único artefato que o transplante e a destilação leem.
|
|
48
|
+
|
|
49
|
+
## Saída
|
|
50
|
+
`inventory.json` no `--out`. Sem `--out`, imprime no stdout. Leia o JSON e
|
|
51
|
+
apresente ao usuário a tabela de decisões antes de qualquer transplante.
|
|
@@ -0,0 +1,307 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "clone-inventory",
|
|
3
|
+
"lockfileVersion": 3,
|
|
4
|
+
"requires": true,
|
|
5
|
+
"packages": {
|
|
6
|
+
"": {
|
|
7
|
+
"name": "clone-inventory",
|
|
8
|
+
"dependencies": {
|
|
9
|
+
"cheerio": "^1.0.0",
|
|
10
|
+
"playwright": "^1.50.0"
|
|
11
|
+
},
|
|
12
|
+
"engines": {
|
|
13
|
+
"node": ">=18"
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
"node_modules/boolbase": {
|
|
17
|
+
"version": "1.0.0",
|
|
18
|
+
"license": "ISC"
|
|
19
|
+
},
|
|
20
|
+
"node_modules/cheerio": {
|
|
21
|
+
"version": "1.2.0",
|
|
22
|
+
"license": "MIT",
|
|
23
|
+
"dependencies": {
|
|
24
|
+
"cheerio-select": "^2.1.0",
|
|
25
|
+
"dom-serializer": "^2.0.0",
|
|
26
|
+
"domhandler": "^5.0.3",
|
|
27
|
+
"domutils": "^3.2.2",
|
|
28
|
+
"encoding-sniffer": "^0.2.1",
|
|
29
|
+
"htmlparser2": "^10.1.0",
|
|
30
|
+
"parse5": "^7.3.0",
|
|
31
|
+
"parse5-htmlparser2-tree-adapter": "^7.1.0",
|
|
32
|
+
"parse5-parser-stream": "^7.1.2",
|
|
33
|
+
"undici": "^7.19.0",
|
|
34
|
+
"whatwg-mimetype": "^4.0.0"
|
|
35
|
+
},
|
|
36
|
+
"engines": {
|
|
37
|
+
"node": ">=20.18.1"
|
|
38
|
+
},
|
|
39
|
+
"funding": {
|
|
40
|
+
"url": "https://github.com/cheeriojs/cheerio?sponsor=1"
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
"node_modules/cheerio-select": {
|
|
44
|
+
"version": "2.1.0",
|
|
45
|
+
"license": "BSD-2-Clause",
|
|
46
|
+
"dependencies": {
|
|
47
|
+
"boolbase": "^1.0.0",
|
|
48
|
+
"css-select": "^5.1.0",
|
|
49
|
+
"css-what": "^6.1.0",
|
|
50
|
+
"domelementtype": "^2.3.0",
|
|
51
|
+
"domhandler": "^5.0.3",
|
|
52
|
+
"domutils": "^3.0.1"
|
|
53
|
+
},
|
|
54
|
+
"funding": {
|
|
55
|
+
"url": "https://github.com/sponsors/fb55"
|
|
56
|
+
}
|
|
57
|
+
},
|
|
58
|
+
"node_modules/css-select": {
|
|
59
|
+
"version": "5.2.2",
|
|
60
|
+
"license": "BSD-2-Clause",
|
|
61
|
+
"dependencies": {
|
|
62
|
+
"boolbase": "^1.0.0",
|
|
63
|
+
"css-what": "^6.1.0",
|
|
64
|
+
"domhandler": "^5.0.2",
|
|
65
|
+
"domutils": "^3.0.1",
|
|
66
|
+
"nth-check": "^2.0.1"
|
|
67
|
+
},
|
|
68
|
+
"funding": {
|
|
69
|
+
"url": "https://github.com/sponsors/fb55"
|
|
70
|
+
}
|
|
71
|
+
},
|
|
72
|
+
"node_modules/css-what": {
|
|
73
|
+
"version": "6.2.2",
|
|
74
|
+
"license": "BSD-2-Clause",
|
|
75
|
+
"engines": {
|
|
76
|
+
"node": ">= 6"
|
|
77
|
+
},
|
|
78
|
+
"funding": {
|
|
79
|
+
"url": "https://github.com/sponsors/fb55"
|
|
80
|
+
}
|
|
81
|
+
},
|
|
82
|
+
"node_modules/dom-serializer": {
|
|
83
|
+
"version": "2.0.0",
|
|
84
|
+
"license": "MIT",
|
|
85
|
+
"dependencies": {
|
|
86
|
+
"domelementtype": "^2.3.0",
|
|
87
|
+
"domhandler": "^5.0.2",
|
|
88
|
+
"entities": "^4.2.0"
|
|
89
|
+
},
|
|
90
|
+
"funding": {
|
|
91
|
+
"url": "https://github.com/cheeriojs/dom-serializer?sponsor=1"
|
|
92
|
+
}
|
|
93
|
+
},
|
|
94
|
+
"node_modules/domelementtype": {
|
|
95
|
+
"version": "2.3.0",
|
|
96
|
+
"funding": [
|
|
97
|
+
{
|
|
98
|
+
"type": "github",
|
|
99
|
+
"url": "https://github.com/sponsors/fb55"
|
|
100
|
+
}
|
|
101
|
+
],
|
|
102
|
+
"license": "BSD-2-Clause"
|
|
103
|
+
},
|
|
104
|
+
"node_modules/domhandler": {
|
|
105
|
+
"version": "5.0.3",
|
|
106
|
+
"license": "BSD-2-Clause",
|
|
107
|
+
"dependencies": {
|
|
108
|
+
"domelementtype": "^2.3.0"
|
|
109
|
+
},
|
|
110
|
+
"engines": {
|
|
111
|
+
"node": ">= 4"
|
|
112
|
+
},
|
|
113
|
+
"funding": {
|
|
114
|
+
"url": "https://github.com/fb55/domhandler?sponsor=1"
|
|
115
|
+
}
|
|
116
|
+
},
|
|
117
|
+
"node_modules/domutils": {
|
|
118
|
+
"version": "3.2.2",
|
|
119
|
+
"license": "BSD-2-Clause",
|
|
120
|
+
"dependencies": {
|
|
121
|
+
"dom-serializer": "^2.0.0",
|
|
122
|
+
"domelementtype": "^2.3.0",
|
|
123
|
+
"domhandler": "^5.0.3"
|
|
124
|
+
},
|
|
125
|
+
"funding": {
|
|
126
|
+
"url": "https://github.com/fb55/domutils?sponsor=1"
|
|
127
|
+
}
|
|
128
|
+
},
|
|
129
|
+
"node_modules/encoding-sniffer": {
|
|
130
|
+
"version": "0.2.1",
|
|
131
|
+
"license": "MIT",
|
|
132
|
+
"dependencies": {
|
|
133
|
+
"iconv-lite": "^0.6.3",
|
|
134
|
+
"whatwg-encoding": "^3.1.1"
|
|
135
|
+
},
|
|
136
|
+
"funding": {
|
|
137
|
+
"url": "https://github.com/fb55/encoding-sniffer?sponsor=1"
|
|
138
|
+
}
|
|
139
|
+
},
|
|
140
|
+
"node_modules/entities": {
|
|
141
|
+
"version": "4.5.0",
|
|
142
|
+
"license": "BSD-2-Clause",
|
|
143
|
+
"engines": {
|
|
144
|
+
"node": ">=0.12"
|
|
145
|
+
},
|
|
146
|
+
"funding": {
|
|
147
|
+
"url": "https://github.com/fb55/entities?sponsor=1"
|
|
148
|
+
}
|
|
149
|
+
},
|
|
150
|
+
"node_modules/fsevents": {
|
|
151
|
+
"version": "2.3.2",
|
|
152
|
+
"resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
|
|
153
|
+
"integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
|
|
154
|
+
"hasInstallScript": true,
|
|
155
|
+
"license": "MIT",
|
|
156
|
+
"optional": true,
|
|
157
|
+
"os": [
|
|
158
|
+
"darwin"
|
|
159
|
+
],
|
|
160
|
+
"engines": {
|
|
161
|
+
"node": "^8.16.0 || ^10.6.0 || >=11.0.0"
|
|
162
|
+
}
|
|
163
|
+
},
|
|
164
|
+
"node_modules/htmlparser2": {
|
|
165
|
+
"version": "10.1.0",
|
|
166
|
+
"funding": [
|
|
167
|
+
"https://github.com/fb55/htmlparser2?sponsor=1",
|
|
168
|
+
{
|
|
169
|
+
"type": "github",
|
|
170
|
+
"url": "https://github.com/sponsors/fb55"
|
|
171
|
+
}
|
|
172
|
+
],
|
|
173
|
+
"license": "MIT",
|
|
174
|
+
"dependencies": {
|
|
175
|
+
"domelementtype": "^2.3.0",
|
|
176
|
+
"domhandler": "^5.0.3",
|
|
177
|
+
"domutils": "^3.2.2",
|
|
178
|
+
"entities": "^7.0.1"
|
|
179
|
+
}
|
|
180
|
+
},
|
|
181
|
+
"node_modules/htmlparser2/node_modules/entities": {
|
|
182
|
+
"version": "7.0.1",
|
|
183
|
+
"license": "BSD-2-Clause",
|
|
184
|
+
"engines": {
|
|
185
|
+
"node": ">=0.12"
|
|
186
|
+
},
|
|
187
|
+
"funding": {
|
|
188
|
+
"url": "https://github.com/fb55/entities?sponsor=1"
|
|
189
|
+
}
|
|
190
|
+
},
|
|
191
|
+
"node_modules/iconv-lite": {
|
|
192
|
+
"version": "0.6.3",
|
|
193
|
+
"license": "MIT",
|
|
194
|
+
"dependencies": {
|
|
195
|
+
"safer-buffer": ">= 2.1.2 < 3.0.0"
|
|
196
|
+
},
|
|
197
|
+
"engines": {
|
|
198
|
+
"node": ">=0.10.0"
|
|
199
|
+
}
|
|
200
|
+
},
|
|
201
|
+
"node_modules/nth-check": {
|
|
202
|
+
"version": "2.1.1",
|
|
203
|
+
"license": "BSD-2-Clause",
|
|
204
|
+
"dependencies": {
|
|
205
|
+
"boolbase": "^1.0.0"
|
|
206
|
+
},
|
|
207
|
+
"funding": {
|
|
208
|
+
"url": "https://github.com/fb55/nth-check?sponsor=1"
|
|
209
|
+
}
|
|
210
|
+
},
|
|
211
|
+
"node_modules/parse5": {
|
|
212
|
+
"version": "7.3.0",
|
|
213
|
+
"license": "MIT",
|
|
214
|
+
"dependencies": {
|
|
215
|
+
"entities": "^6.0.0"
|
|
216
|
+
},
|
|
217
|
+
"funding": {
|
|
218
|
+
"url": "https://github.com/inikulin/parse5?sponsor=1"
|
|
219
|
+
}
|
|
220
|
+
},
|
|
221
|
+
"node_modules/parse5-htmlparser2-tree-adapter": {
|
|
222
|
+
"version": "7.1.0",
|
|
223
|
+
"license": "MIT",
|
|
224
|
+
"dependencies": {
|
|
225
|
+
"domhandler": "^5.0.3",
|
|
226
|
+
"parse5": "^7.0.0"
|
|
227
|
+
},
|
|
228
|
+
"funding": {
|
|
229
|
+
"url": "https://github.com/inikulin/parse5?sponsor=1"
|
|
230
|
+
}
|
|
231
|
+
},
|
|
232
|
+
"node_modules/parse5-parser-stream": {
|
|
233
|
+
"version": "7.1.2",
|
|
234
|
+
"license": "MIT",
|
|
235
|
+
"dependencies": {
|
|
236
|
+
"parse5": "^7.0.0"
|
|
237
|
+
},
|
|
238
|
+
"funding": {
|
|
239
|
+
"url": "https://github.com/inikulin/parse5?sponsor=1"
|
|
240
|
+
}
|
|
241
|
+
},
|
|
242
|
+
"node_modules/parse5/node_modules/entities": {
|
|
243
|
+
"version": "6.0.1",
|
|
244
|
+
"license": "BSD-2-Clause",
|
|
245
|
+
"engines": {
|
|
246
|
+
"node": ">=0.12"
|
|
247
|
+
},
|
|
248
|
+
"funding": {
|
|
249
|
+
"url": "https://github.com/fb55/entities?sponsor=1"
|
|
250
|
+
}
|
|
251
|
+
},
|
|
252
|
+
"node_modules/playwright": {
|
|
253
|
+
"version": "1.60.0",
|
|
254
|
+
"license": "Apache-2.0",
|
|
255
|
+
"dependencies": {
|
|
256
|
+
"playwright-core": "1.60.0"
|
|
257
|
+
},
|
|
258
|
+
"bin": {
|
|
259
|
+
"playwright": "cli.js"
|
|
260
|
+
},
|
|
261
|
+
"engines": {
|
|
262
|
+
"node": ">=18"
|
|
263
|
+
},
|
|
264
|
+
"optionalDependencies": {
|
|
265
|
+
"fsevents": "2.3.2"
|
|
266
|
+
}
|
|
267
|
+
},
|
|
268
|
+
"node_modules/playwright-core": {
|
|
269
|
+
"version": "1.60.0",
|
|
270
|
+
"license": "Apache-2.0",
|
|
271
|
+
"bin": {
|
|
272
|
+
"playwright-core": "cli.js"
|
|
273
|
+
},
|
|
274
|
+
"engines": {
|
|
275
|
+
"node": ">=18"
|
|
276
|
+
}
|
|
277
|
+
},
|
|
278
|
+
"node_modules/safer-buffer": {
|
|
279
|
+
"version": "2.1.2",
|
|
280
|
+
"license": "MIT"
|
|
281
|
+
},
|
|
282
|
+
"node_modules/undici": {
|
|
283
|
+
"version": "7.26.0",
|
|
284
|
+
"license": "MIT",
|
|
285
|
+
"engines": {
|
|
286
|
+
"node": ">=20.18.1"
|
|
287
|
+
}
|
|
288
|
+
},
|
|
289
|
+
"node_modules/whatwg-encoding": {
|
|
290
|
+
"version": "3.1.1",
|
|
291
|
+
"license": "MIT",
|
|
292
|
+
"dependencies": {
|
|
293
|
+
"iconv-lite": "0.6.3"
|
|
294
|
+
},
|
|
295
|
+
"engines": {
|
|
296
|
+
"node": ">=18"
|
|
297
|
+
}
|
|
298
|
+
},
|
|
299
|
+
"node_modules/whatwg-mimetype": {
|
|
300
|
+
"version": "4.0.0",
|
|
301
|
+
"license": "MIT",
|
|
302
|
+
"engines": {
|
|
303
|
+
"node": ">=18"
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{ "name": "clone-inventory", "private": true, "type": "module", "engines": { "node": ">=18" }, "dependencies": { "playwright": "^1.50.0", "cheerio": "^1.0.0" } }
|