@proflandrigan/shards 1.1.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/README.md +475 -0
- package/package.json +37 -0
- package/src/agents/academic.md +276 -0
- package/src/agents/ai-engineer.md +377 -0
- package/src/agents/analytics-engineer.md +364 -0
- package/src/agents/applied-ml-scientist.md +410 -0
- package/src/agents/backend-engineer.md +255 -0
- package/src/agents/bi-engineer.md +333 -0
- package/src/agents/data-analyst.md +343 -0
- package/src/agents/data-engineer.md +260 -0
- package/src/agents/data-modeller.md +386 -0
- package/src/agents/data-scientist.md +366 -0
- package/src/agents/deep-learning-engineer.md +389 -0
- package/src/agents/ml-engineer.md +424 -0
- package/src/agents/mlops-engineer.md +339 -0
- package/src/agents/researcher.md +187 -0
- package/src/agents/specific_instructions/academic/critical_review.md +263 -0
- package/src/agents/specific_instructions/academic/report.md +113 -0
- package/src/agents/specific_instructions/ai_engineer/advise.md +162 -0
- package/src/agents/specific_instructions/ai_engineer/bi_engineer_handoff.md +86 -0
- package/src/agents/specific_instructions/ai_engineer/experiment.md +471 -0
- package/src/agents/specific_instructions/ai_engineer/experiment_ui_mode.md +44 -0
- package/src/agents/specific_instructions/ai_engineer/phases/index.md +45 -0
- package/src/agents/specific_instructions/ai_engineer/phases/phase-1.md +55 -0
- package/src/agents/specific_instructions/ai_engineer/phases/phase-2.md +86 -0
- package/src/agents/specific_instructions/ai_engineer/phases/phase-3.md +96 -0
- package/src/agents/specific_instructions/ai_engineer/phases/phase-4.md +138 -0
- package/src/agents/specific_instructions/ai_engineer/phases/phase-5.md +157 -0
- package/src/agents/specific_instructions/ai_engineer/phases/phase-6.md +196 -0
- package/src/agents/specific_instructions/ai_engineer/phases/phase-7.md +313 -0
- package/src/agents/specific_instructions/ai_engineer/phases.md +1011 -0
- package/src/agents/specific_instructions/ai_engineer/prompt_lab.md +161 -0
- package/src/agents/specific_instructions/ai_engineer/prompt_lab_ui_mode.md +28 -0
- package/src/agents/specific_instructions/ai_engineer/research.md +393 -0
- package/src/agents/specific_instructions/ai_engineer/research_ui_mode.md +66 -0
- package/src/agents/specific_instructions/ai_engineer/review.md +159 -0
- package/src/agents/specific_instructions/ai_engineer/validation_checklist.md +182 -0
- package/src/agents/specific_instructions/analytics_engineer/advise.md +155 -0
- package/src/agents/specific_instructions/analytics_engineer/bi_engineer_handoff.md +91 -0
- package/src/agents/specific_instructions/analytics_engineer/data_analyst_handoff.md +84 -0
- package/src/agents/specific_instructions/analytics_engineer/deep_phases.md +818 -0
- package/src/agents/specific_instructions/analytics_engineer/phases_deep/index.md +24 -0
- package/src/agents/specific_instructions/analytics_engineer/phases_deep/phase-1.md +77 -0
- package/src/agents/specific_instructions/analytics_engineer/phases_deep/phase-2.md +106 -0
- package/src/agents/specific_instructions/analytics_engineer/phases_deep/phase-3.md +93 -0
- package/src/agents/specific_instructions/analytics_engineer/phases_deep/phase-4.md +79 -0
- package/src/agents/specific_instructions/analytics_engineer/phases_deep/phase-5.md +61 -0
- package/src/agents/specific_instructions/analytics_engineer/phases_deep/phase-6.md +45 -0
- package/src/agents/specific_instructions/analytics_engineer/phases_deep/phase-7.md +235 -0
- package/src/agents/specific_instructions/analytics_engineer/phases_deep/phase-8.md +221 -0
- package/src/agents/specific_instructions/analytics_engineer/phases_quick/index.md +19 -0
- package/src/agents/specific_instructions/analytics_engineer/phases_quick/phase-1.md +47 -0
- package/src/agents/specific_instructions/analytics_engineer/phases_quick/phase-2.md +78 -0
- package/src/agents/specific_instructions/analytics_engineer/quick_phases.md +112 -0
- package/src/agents/specific_instructions/analytics_engineer/review.md +167 -0
- package/src/agents/specific_instructions/analytics_engineer/service_mode.md +369 -0
- package/src/agents/specific_instructions/analytics_engineer/ui_mode.md +45 -0
- package/src/agents/specific_instructions/analytics_engineer/update.md +162 -0
- package/src/agents/specific_instructions/analytics_engineer/validation_checklist.md +121 -0
- package/src/agents/specific_instructions/applied_ml_scientist/advise.md +143 -0
- package/src/agents/specific_instructions/applied_ml_scientist/phases/index.md +21 -0
- package/src/agents/specific_instructions/applied_ml_scientist/phases/phase-1.md +51 -0
- package/src/agents/specific_instructions/applied_ml_scientist/phases/phase-2.md +66 -0
- package/src/agents/specific_instructions/applied_ml_scientist/phases/phase-3.md +113 -0
- package/src/agents/specific_instructions/applied_ml_scientist/phases/phase-4.md +104 -0
- package/src/agents/specific_instructions/applied_ml_scientist/phases/phase-5.md +156 -0
- package/src/agents/specific_instructions/applied_ml_scientist/phases.md +428 -0
- package/src/agents/specific_instructions/applied_ml_scientist/research.md +379 -0
- package/src/agents/specific_instructions/applied_ml_scientist/review.md +142 -0
- package/src/agents/specific_instructions/applied_ml_scientist/validation_checklist.md +136 -0
- package/src/agents/specific_instructions/backend_engineer/clean.md +149 -0
- package/src/agents/specific_instructions/backend_engineer/review.md +91 -0
- package/src/agents/specific_instructions/backend_engineer/review_checklist.md +54 -0
- package/src/agents/specific_instructions/backend_engineer/service_mode.md +67 -0
- package/src/agents/specific_instructions/bi_engineer/advise.md +137 -0
- package/src/agents/specific_instructions/bi_engineer/data_analyst_handoff.md +77 -0
- package/src/agents/specific_instructions/bi_engineer/incoming_handoff.md +45 -0
- package/src/agents/specific_instructions/bi_engineer/phases/index.md +20 -0
- package/src/agents/specific_instructions/bi_engineer/phases/phase-1.md +164 -0
- package/src/agents/specific_instructions/bi_engineer/phases/phase-2.md +92 -0
- package/src/agents/specific_instructions/bi_engineer/phases/phase-3.md +121 -0
- package/src/agents/specific_instructions/bi_engineer/phases/phase-4.md +106 -0
- package/src/agents/specific_instructions/bi_engineer/phases.md +451 -0
- package/src/agents/specific_instructions/bi_engineer/review.md +166 -0
- package/src/agents/specific_instructions/bi_engineer/update.md +147 -0
- package/src/agents/specific_instructions/bi_engineer/validation_checklist.md +124 -0
- package/src/agents/specific_instructions/data_analyst/advise.md +138 -0
- package/src/agents/specific_instructions/data_analyst/explain.md +221 -0
- package/src/agents/specific_instructions/data_analyst/incoming_handoff.md +40 -0
- package/src/agents/specific_instructions/data_analyst/phases/index.md +20 -0
- package/src/agents/specific_instructions/data_analyst/phases/phase-1.md +159 -0
- package/src/agents/specific_instructions/data_analyst/phases/phase-2.md +112 -0
- package/src/agents/specific_instructions/data_analyst/phases/phase-3.md +265 -0
- package/src/agents/specific_instructions/data_analyst/phases/phase-4.md +100 -0
- package/src/agents/specific_instructions/data_analyst/phases.md +501 -0
- package/src/agents/specific_instructions/data_analyst/review.md +138 -0
- package/src/agents/specific_instructions/data_analyst/ui_mode.md +26 -0
- package/src/agents/specific_instructions/data_analyst/update.md +144 -0
- package/src/agents/specific_instructions/data_analyst/validation_checklist.md +95 -0
- package/src/agents/specific_instructions/data_engineer/advise.md +137 -0
- package/src/agents/specific_instructions/data_engineer/phases.md +466 -0
- package/src/agents/specific_instructions/data_engineer/phases_deep/index.md +23 -0
- package/src/agents/specific_instructions/data_engineer/phases_deep/phase-1.md +49 -0
- package/src/agents/specific_instructions/data_engineer/phases_deep/phase-2.md +93 -0
- package/src/agents/specific_instructions/data_engineer/phases_deep/phase-3.md +55 -0
- package/src/agents/specific_instructions/data_engineer/phases_deep/phase-4.md +48 -0
- package/src/agents/specific_instructions/data_engineer/phases_deep/phase-5.md +40 -0
- package/src/agents/specific_instructions/data_engineer/phases_deep/phase-6.md +102 -0
- package/src/agents/specific_instructions/data_engineer/phases_deep/phase-7.md +87 -0
- package/src/agents/specific_instructions/data_engineer/phases_quick/index.md +19 -0
- package/src/agents/specific_instructions/data_engineer/phases_quick/phase-1.md +45 -0
- package/src/agents/specific_instructions/data_engineer/phases_quick/phase-2.md +54 -0
- package/src/agents/specific_instructions/data_engineer/review.md +135 -0
- package/src/agents/specific_instructions/data_engineer/validation_checklist.md +136 -0
- package/src/agents/specific_instructions/data_modeller/advise.md +137 -0
- package/src/agents/specific_instructions/data_modeller/phases.md +581 -0
- package/src/agents/specific_instructions/data_modeller/phases_deep/index.md +23 -0
- package/src/agents/specific_instructions/data_modeller/phases_deep/phase-1.md +52 -0
- package/src/agents/specific_instructions/data_modeller/phases_deep/phase-2.md +113 -0
- package/src/agents/specific_instructions/data_modeller/phases_deep/phase-3.md +47 -0
- package/src/agents/specific_instructions/data_modeller/phases_deep/phase-4.md +51 -0
- package/src/agents/specific_instructions/data_modeller/phases_deep/phase-5.md +45 -0
- package/src/agents/specific_instructions/data_modeller/phases_deep/phase-6.md +105 -0
- package/src/agents/specific_instructions/data_modeller/phases_deep/phase-7.md +136 -0
- package/src/agents/specific_instructions/data_modeller/phases_quick/index.md +19 -0
- package/src/agents/specific_instructions/data_modeller/phases_quick/phase-1.md +47 -0
- package/src/agents/specific_instructions/data_modeller/phases_quick/phase-2.md +65 -0
- package/src/agents/specific_instructions/data_modeller/review.md +141 -0
- package/src/agents/specific_instructions/data_modeller/service_mode.md +218 -0
- package/src/agents/specific_instructions/data_modeller/validation_checklist.md +125 -0
- package/src/agents/specific_instructions/data_scientist/advise.md +158 -0
- package/src/agents/specific_instructions/data_scientist/bi_engineer_handoff.md +63 -0
- package/src/agents/specific_instructions/data_scientist/experiment.md +482 -0
- package/src/agents/specific_instructions/data_scientist/experiment_ui_mode.md +44 -0
- package/src/agents/specific_instructions/data_scientist/explain.md +247 -0
- package/src/agents/specific_instructions/data_scientist/greenfield_data.md +35 -0
- package/src/agents/specific_instructions/data_scientist/ml_engineer_handoff.md +52 -0
- package/src/agents/specific_instructions/data_scientist/notebook_walkthrough.md +76 -0
- package/src/agents/specific_instructions/data_scientist/phases/index.md +24 -0
- package/src/agents/specific_instructions/data_scientist/phases/phase-1.md +45 -0
- package/src/agents/specific_instructions/data_scientist/phases/phase-2.md +67 -0
- package/src/agents/specific_instructions/data_scientist/phases/phase-3.md +89 -0
- package/src/agents/specific_instructions/data_scientist/phases/phase-4.md +143 -0
- package/src/agents/specific_instructions/data_scientist/phases/phase-5.md +71 -0
- package/src/agents/specific_instructions/data_scientist/phases/phase-6.md +239 -0
- package/src/agents/specific_instructions/data_scientist/phases/phase-7.md +207 -0
- package/src/agents/specific_instructions/data_scientist/phases.md +651 -0
- package/src/agents/specific_instructions/data_scientist/research.md +345 -0
- package/src/agents/specific_instructions/data_scientist/research_ui_mode.md +52 -0
- package/src/agents/specific_instructions/data_scientist/review.md +136 -0
- package/src/agents/specific_instructions/data_scientist/service_mode.md +247 -0
- package/src/agents/specific_instructions/data_scientist/validation_checklist.md +183 -0
- package/src/agents/specific_instructions/deep_learning_engineer/advise.md +145 -0
- package/src/agents/specific_instructions/deep_learning_engineer/phases/index.md +21 -0
- package/src/agents/specific_instructions/deep_learning_engineer/phases/phase-1.md +74 -0
- package/src/agents/specific_instructions/deep_learning_engineer/phases/phase-2.md +98 -0
- package/src/agents/specific_instructions/deep_learning_engineer/phases/phase-3.md +76 -0
- package/src/agents/specific_instructions/deep_learning_engineer/phases/phase-4.md +128 -0
- package/src/agents/specific_instructions/deep_learning_engineer/phases/phase-5.md +292 -0
- package/src/agents/specific_instructions/deep_learning_engineer/phases.md +567 -0
- package/src/agents/specific_instructions/deep_learning_engineer/research.md +389 -0
- package/src/agents/specific_instructions/deep_learning_engineer/review.md +155 -0
- package/src/agents/specific_instructions/deep_learning_engineer/validation_checklist.md +147 -0
- package/src/agents/specific_instructions/ml_engineer/advise.md +174 -0
- package/src/agents/specific_instructions/ml_engineer/bi_engineer_handoff.md +71 -0
- package/src/agents/specific_instructions/ml_engineer/experiment.md +474 -0
- package/src/agents/specific_instructions/ml_engineer/experiment_ui_mode.md +44 -0
- package/src/agents/specific_instructions/ml_engineer/notebook_walkthrough.md +75 -0
- package/src/agents/specific_instructions/ml_engineer/phases/index.md +25 -0
- package/src/agents/specific_instructions/ml_engineer/phases/phase-1.md +49 -0
- package/src/agents/specific_instructions/ml_engineer/phases/phase-2.md +75 -0
- package/src/agents/specific_instructions/ml_engineer/phases/phase-3.md +124 -0
- package/src/agents/specific_instructions/ml_engineer/phases/phase-4.md +279 -0
- package/src/agents/specific_instructions/ml_engineer/phases/phase-5.md +160 -0
- package/src/agents/specific_instructions/ml_engineer/phases/phase-6-5.md +170 -0
- package/src/agents/specific_instructions/ml_engineer/phases/phase-6.md +295 -0
- package/src/agents/specific_instructions/ml_engineer/phases/phase-7.md +337 -0
- package/src/agents/specific_instructions/ml_engineer/phases.md +1068 -0
- package/src/agents/specific_instructions/ml_engineer/research.md +437 -0
- package/src/agents/specific_instructions/ml_engineer/research_ui_mode.md +71 -0
- package/src/agents/specific_instructions/ml_engineer/review.md +187 -0
- package/src/agents/specific_instructions/ml_engineer/service_mode.md +273 -0
- package/src/agents/specific_instructions/ml_engineer/validation_checklist.md +185 -0
- package/src/agents/specific_instructions/mlops_engineer/advise.md +139 -0
- package/src/agents/specific_instructions/mlops_engineer/phases/index.md +23 -0
- package/src/agents/specific_instructions/mlops_engineer/phases/phase-1.md +52 -0
- package/src/agents/specific_instructions/mlops_engineer/phases/phase-2.md +86 -0
- package/src/agents/specific_instructions/mlops_engineer/phases/phase-3.md +105 -0
- package/src/agents/specific_instructions/mlops_engineer/phases/phase-4.md +128 -0
- package/src/agents/specific_instructions/mlops_engineer/phases/phase-5.md +106 -0
- package/src/agents/specific_instructions/mlops_engineer/phases/phase-6.md +128 -0
- package/src/agents/specific_instructions/mlops_engineer/phases/phase-7.md +144 -0
- package/src/agents/specific_instructions/mlops_engineer/phases.md +671 -0
- package/src/agents/specific_instructions/mlops_engineer/review.md +164 -0
- package/src/agents/specific_instructions/mlops_engineer/service_mode.md +81 -0
- package/src/agents/specific_instructions/mlops_engineer/validation_checklist.md +151 -0
- package/src/agents/specific_instructions/researcher/critical_review.md +292 -0
- package/src/agents/specific_instructions/researcher/review_checklist.md +67 -0
- package/src/agents/specific_instructions/researcher/service_mode.md +224 -0
- package/src/agents/specific_instructions/shared/auto_verify_mode.md +141 -0
- package/src/agents/specific_instructions/shared/autonomous_research.md +1289 -0
- package/src/agents/specific_instructions/shared/behavioral_rules.md +36 -0
- package/src/agents/specific_instructions/shared/diverge_protocol.md +387 -0
- package/src/agents/specific_instructions/shared/engineering_guidelines.md +136 -0
- package/src/agents/specific_instructions/shared/experiment_versioning.md +184 -0
- package/src/agents/specific_instructions/shared/goal_mode.md +187 -0
- package/src/agents/specific_instructions/shared/incremental_testing.md +139 -0
- package/src/agents/specific_instructions/shared/intent_discovery.md +223 -0
- package/src/agents/specific_instructions/shared/join_path_protocol.md +168 -0
- package/src/agents/specific_instructions/shared/knowledge_checkpoint.md +83 -0
- package/src/agents/specific_instructions/shared/knowledge_harvest.md +220 -0
- package/src/agents/specific_instructions/shared/knowledge_retrieval.md +100 -0
- package/src/agents/specific_instructions/shared/notebook_walkthrough_protocol.md +367 -0
- package/src/agents/specific_instructions/shared/reviewer_verdict_protocol.md +74 -0
- package/src/agents/specific_instructions/shared/swarm_protocol.md +97 -0
- package/src/agents/specific_instructions/shared/validation_protocol.md +139 -0
- package/src/agents/specific_instructions/syn/arbiter.md +140 -0
- package/src/agents/specific_instructions/syn/brainstorm.md +550 -0
- package/src/agents/specific_instructions/syn/code_review.md +232 -0
- package/src/agents/specific_instructions/syn/diff.md +239 -0
- package/src/agents/specific_instructions/syn/final_review.md +65 -0
- package/src/agents/specific_instructions/syn/fixer.md +240 -0
- package/src/agents/specific_instructions/syn/free_form.md +130 -0
- package/src/agents/specific_instructions/syn/knowledge.md +468 -0
- package/src/agents/specific_instructions/syn/notebook_walkthrough.md +78 -0
- package/src/agents/specific_instructions/syn/panel_review.md +634 -0
- package/src/agents/specific_instructions/syn/pm.md +453 -0
- package/src/agents/specific_instructions/syn/pr_review.md +255 -0
- package/src/agents/specific_instructions/syn/slides.md +417 -0
- package/src/agents/syn.md +729 -0
- package/src/commands/academic.md +41 -0
- package/src/commands/ai-engineer.md +45 -0
- package/src/commands/analytics-engineer.md +48 -0
- package/src/commands/applied-ml-scientist.md +45 -0
- package/src/commands/backend-engineer.md +35 -0
- package/src/commands/bi-engineer.md +40 -0
- package/src/commands/brainstorm.md +24 -0
- package/src/commands/data-analyst.md +38 -0
- package/src/commands/data-engineer.md +37 -0
- package/src/commands/data-modeller.md +38 -0
- package/src/commands/data-scientist.md +38 -0
- package/src/commands/deep-learning-engineer.md +47 -0
- package/src/commands/end.md +49 -0
- package/src/commands/knowledge.md +24 -0
- package/src/commands/ml-engineer.md +42 -0
- package/src/commands/mlops-engineer.md +47 -0
- package/src/commands/notebook-walkthrough.md +58 -0
- package/src/commands/researcher.md +40 -0
- package/src/commands/resume.md +57 -0
- package/src/commands/review-pr.md +26 -0
- package/src/commands/shards-guide.md +41 -0
- package/src/commands/shards-ui.md +32 -0
- package/src/commands/shards.md +41 -0
- package/src/docs/01-getting-started/concepts.md +109 -0
- package/src/docs/01-getting-started/first-session.md +79 -0
- package/src/docs/01-getting-started/install.md +61 -0
- package/src/docs/02-agents/academic.md +71 -0
- package/src/docs/02-agents/ai-engineer.md +78 -0
- package/src/docs/02-agents/analytics-engineer.md +58 -0
- package/src/docs/02-agents/applied-ml-scientist.md +59 -0
- package/src/docs/02-agents/backend-engineer.md +58 -0
- package/src/docs/02-agents/bi-engineer.md +65 -0
- package/src/docs/02-agents/data-analyst.md +67 -0
- package/src/docs/02-agents/data-engineer.md +57 -0
- package/src/docs/02-agents/data-modeller.md +51 -0
- package/src/docs/02-agents/data-scientist.md +78 -0
- package/src/docs/02-agents/deep-learning-engineer.md +64 -0
- package/src/docs/02-agents/ml-engineer.md +80 -0
- package/src/docs/02-agents/mlops-engineer.md +59 -0
- package/src/docs/02-agents/overview.md +62 -0
- package/src/docs/02-agents/researcher.md +73 -0
- package/src/docs/02-agents/syn.md +88 -0
- package/src/docs/03-protocols/auto-verify.md +82 -0
- package/src/docs/03-protocols/autonomous-research.md +59 -0
- package/src/docs/03-protocols/behavioral-rules.md +35 -0
- package/src/docs/03-protocols/diverge.md +50 -0
- package/src/docs/03-protocols/engineering-guidelines.md +56 -0
- package/src/docs/03-protocols/experiment-versioning.md +38 -0
- package/src/docs/03-protocols/gate-pattern.md +65 -0
- package/src/docs/03-protocols/incremental-testing.md +68 -0
- package/src/docs/03-protocols/join-path.md +46 -0
- package/src/docs/03-protocols/knowledge-ledger.md +70 -0
- package/src/docs/03-protocols/reviewer-verdicts.md +39 -0
- package/src/docs/03-protocols/swarm.md +40 -0
- package/src/docs/03-protocols/validation.md +174 -0
- package/src/docs/04-ui/activity-bar.md +70 -0
- package/src/docs/04-ui/chat-pane.md +80 -0
- package/src/docs/04-ui/code-intel.md +62 -0
- package/src/docs/04-ui/file-editing.md +61 -0
- package/src/docs/04-ui/git.md +54 -0
- package/src/docs/04-ui/keybindings.md +79 -0
- package/src/docs/04-ui/knowledge-map.md +76 -0
- package/src/docs/04-ui/overview.md +93 -0
- package/src/docs/04-ui/panels.md +49 -0
- package/src/docs/04-ui/pinboard-selection.md +66 -0
- package/src/docs/04-ui/quick-open-palette.md +56 -0
- package/src/docs/04-ui/sessions.md +81 -0
- package/src/docs/04-ui/settings-permissions.md +56 -0
- package/src/docs/05-commands/reference.md +59 -0
- package/src/docs/06-outputs/directory-map.md +116 -0
- package/src/docs/07-workflows/ai-eval-first.md +57 -0
- package/src/docs/07-workflows/deep-study-to-production.md +76 -0
- package/src/docs/07-workflows/diverge-exploration.md +77 -0
- package/src/docs/07-workflows/quick-analysis.md +45 -0
- package/src/docs/08-integrations/claude-code-auto-mode.md +191 -0
- package/src/docs/08-integrations/google-slides.md +175 -0
- package/src/docs/README.md +30 -0
- package/src/docs/manifest.json +108 -0
- package/src/templates/analysis-template.md +20 -0
- package/src/templates/branch-report.md +46 -0
- package/src/templates/diff-report.md +88 -0
- package/src/templates/knowledge-index.md +7 -0
- package/src/templates/model-card-schema.json +186 -0
- package/src/templates/model-card-schema.md +88 -0
- package/src/templates/model-card.md +124 -0
- package/src/templates/project-plan.md +47 -0
- package/src/templates/project-specs.md +81 -0
- package/src/templates/report-template.md +43 -0
- package/src/templates/study-template.md +25 -0
- package/src/ui/cc-readonly.js +181 -0
- package/src/ui/chat-session.js +466 -0
- package/src/ui/css/base.css +136 -0
- package/src/ui/css/brainstorm.css +525 -0
- package/src/ui/css/chat.css +1405 -0
- package/src/ui/css/editor.css +546 -0
- package/src/ui/css/eval-dashboard.css +157 -0
- package/src/ui/css/experiment.css +237 -0
- package/src/ui/css/guide.css +186 -0
- package/src/ui/css/knowledge-map.css +383 -0
- package/src/ui/css/layout.css +431 -0
- package/src/ui/css/model-card.css +161 -0
- package/src/ui/css/notebook-walkthrough.css +271 -0
- package/src/ui/css/pr-review.css +403 -0
- package/src/ui/css/prompt-lab.css +325 -0
- package/src/ui/css/sessions.css +258 -0
- package/src/ui/css/sidebar.css +661 -0
- package/src/ui/css/terminal.css +113 -0
- package/src/ui/css/theme-light.css +542 -0
- package/src/ui/index.html +389 -0
- package/src/ui/js/agents.js +32 -0
- package/src/ui/js/bookmarks.js +230 -0
- package/src/ui/js/chat.js +1776 -0
- package/src/ui/js/code-intel.js +328 -0
- package/src/ui/js/command-palette.js +142 -0
- package/src/ui/js/events.js +591 -0
- package/src/ui/js/explorer.js +317 -0
- package/src/ui/js/file-view.js +477 -0
- package/src/ui/js/git.js +536 -0
- package/src/ui/js/guide.js +198 -0
- package/src/ui/js/hud.js +75 -0
- package/src/ui/js/init.js +351 -0
- package/src/ui/js/knowledge-map.js +906 -0
- package/src/ui/js/markdown.js +114 -0
- package/src/ui/js/monaco.js +164 -0
- package/src/ui/js/notebook-walkthrough.js +272 -0
- package/src/ui/js/notebook.js +448 -0
- package/src/ui/js/panels.js +2681 -0
- package/src/ui/js/pinboard.js +186 -0
- package/src/ui/js/quick-open.js +164 -0
- package/src/ui/js/selection-context.js +131 -0
- package/src/ui/js/sessions.js +256 -0
- package/src/ui/js/settings.js +476 -0
- package/src/ui/js/split-view.js +82 -0
- package/src/ui/js/state.js +343 -0
- package/src/ui/js/table.js +161 -0
- package/src/ui/js/tabs.js +284 -0
- package/src/ui/js/tabular.js +125 -0
- package/src/ui/js/terminal.js +354 -0
- package/src/ui/js/timeline.js +137 -0
- package/src/ui/js/utils.js +293 -0
- package/src/ui/notebook-kernel.py +790 -0
- package/src/ui/open-browser.js +55 -0
- package/src/ui/permission-pattern.js +42 -0
- package/src/ui/relay.js +513 -0
- package/src/ui/server.js +3072 -0
- package/src/ui/session-index.js +225 -0
- package/src/ui/shards_icon.png +0 -0
- package/src/ui/spawn-server.js +41 -0
- package/src/ui/symbol-index.js +813 -0
- package/src/ui/ui-push.js +177 -0
- package/tools/gate-hook/VALIDATION_SPEC.md +273 -0
- package/tools/gate-hook/__tests__/auto-verify.test.js +343 -0
- package/tools/gate-hook/auto-allowlist.js +179 -0
- package/tools/gate-hook/auto-state.js +68 -0
- package/tools/gate-hook/classify.js +21 -0
- package/tools/gate-hook/log.js +57 -0
- package/tools/gate-hook/parser.js +205 -0
- package/tools/gate-hook/sql-guard.js +230 -0
- package/tools/gate-hook/state.js +170 -0
- package/tools/gate-hook/sweep.js +139 -0
- package/tools/gate-hook/transcript.js +45 -0
- package/tools/gate-hook/validation.js +321 -0
- package/tools/gate-hook.js +475 -0
- package/tools/install.js +914 -0
- package/tools/shards-gates.js +311 -0
- package/tools/shards-sessions.js +261 -0
- package/tools/shards-ui.js +377 -0
|
@@ -0,0 +1,389 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8">
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
6
|
+
<title>Shards UI</title>
|
|
7
|
+
<link rel="icon" type="image/png" href="shards_icon.png">
|
|
8
|
+
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap">
|
|
9
|
+
<link rel="stylesheet" href="https://unpkg.com/tabulator-tables@6.3.1/dist/css/tabulator_midnight.min.css">
|
|
10
|
+
<script src="https://unpkg.com/tabulator-tables@6.3.1/dist/js/tabulator.min.js"></script>
|
|
11
|
+
<script src="https://cdn.plot.ly/plotly-2.35.2.min.js"></script>
|
|
12
|
+
<script src="https://cdn.jsdelivr.net/npm/mermaid@11.4.1/dist/mermaid.min.js"></script>
|
|
13
|
+
<link rel="stylesheet" href="css/base.css">
|
|
14
|
+
<link rel="stylesheet" href="css/layout.css">
|
|
15
|
+
<link rel="stylesheet" href="css/sidebar.css">
|
|
16
|
+
<link rel="stylesheet" href="css/chat.css">
|
|
17
|
+
<link rel="stylesheet" href="css/editor.css">
|
|
18
|
+
<link rel="stylesheet" href="css/theme-light.css">
|
|
19
|
+
<link rel="stylesheet" href="css/experiment.css">
|
|
20
|
+
<link rel="stylesheet" href="css/prompt-lab.css">
|
|
21
|
+
<link rel="stylesheet" href="css/eval-dashboard.css">
|
|
22
|
+
<link rel="stylesheet" href="css/model-card.css">
|
|
23
|
+
<link rel="stylesheet" href="css/knowledge-map.css">
|
|
24
|
+
<link rel="stylesheet" href="css/guide.css">
|
|
25
|
+
<link rel="stylesheet" href="css/pr-review.css">
|
|
26
|
+
<link rel="stylesheet" href="css/notebook-walkthrough.css">
|
|
27
|
+
<link rel="stylesheet" href="css/brainstorm.css">
|
|
28
|
+
<link rel="stylesheet" href="css/terminal.css">
|
|
29
|
+
<link rel="stylesheet" href="css/sessions.css">
|
|
30
|
+
</head>
|
|
31
|
+
<body>
|
|
32
|
+
|
|
33
|
+
<header id="header">
|
|
34
|
+
<div id="header-center">
|
|
35
|
+
<div id="header-session-bar">
|
|
36
|
+
<button id="new-session-btn" title="New chat">+ New Chat</button>
|
|
37
|
+
<button id="end-session-btn" title="End current chat (resumeable later)" onclick="endActiveSession()" disabled>End Chat</button>
|
|
38
|
+
</div>
|
|
39
|
+
</div>
|
|
40
|
+
<div style="display:flex;align-items:center;gap:12px">
|
|
41
|
+
<button id="theme-toggle" onclick="toggleTheme()" title="Toggle light/dark mode">☾</button>
|
|
42
|
+
<div id="conn-status-area">
|
|
43
|
+
<span class="conn-indicator" id="conn-indicator"></span>
|
|
44
|
+
<span id="conn-text">Connecting</span>
|
|
45
|
+
</div>
|
|
46
|
+
</div>
|
|
47
|
+
</header>
|
|
48
|
+
|
|
49
|
+
<main id="main">
|
|
50
|
+
<!-- Explorer sidebar -->
|
|
51
|
+
<aside id="explorer-sidebar">
|
|
52
|
+
<div id="activity-bar">
|
|
53
|
+
<button class="activity-btn active" id="activity-explorer" onclick="onActivityClick('explorer')" title="File Explorer">
|
|
54
|
+
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"><path d="M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z"/></svg>
|
|
55
|
+
</button>
|
|
56
|
+
<button class="activity-btn" id="activity-session" onclick="onActivityClick('session')" title="Session Files">
|
|
57
|
+
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><polyline points="12 6 12 12 16 14"/></svg>
|
|
58
|
+
</button>
|
|
59
|
+
<button class="activity-btn" id="activity-timeline" onclick="onActivityClick('timeline')" title="Session Activity">
|
|
60
|
+
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"><line x1="6" y1="4" x2="6" y2="20"/><circle cx="6" cy="7" r="1.6"/><circle cx="6" cy="12" r="1.6"/><circle cx="6" cy="17" r="1.6"/><line x1="10" y1="7" x2="20" y2="7"/><line x1="10" y1="12" x2="18" y2="12"/><line x1="10" y1="17" x2="16" y2="17"/></svg>
|
|
61
|
+
<span class="badge" id="activity-timeline-badge" style="display:none"></span>
|
|
62
|
+
</button>
|
|
63
|
+
<button class="activity-btn" id="activity-sessions" onclick="onActivityClick('sessions')" title="Sessions (resume past chats)">
|
|
64
|
+
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"><path d="M3 12a9 9 0 1 0 3-6.7"/><polyline points="3 4 3 9 8 9"/></svg>
|
|
65
|
+
</button>
|
|
66
|
+
<button class="activity-btn" id="activity-bookmarks" onclick="onActivityClick('bookmarks')" title="Bookmarks">
|
|
67
|
+
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"><path d="M19 21l-7-5-7 5V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z"/></svg>
|
|
68
|
+
</button>
|
|
69
|
+
<button class="activity-btn" id="activity-git" onclick="onActivityClick('git')" title="Source Control">
|
|
70
|
+
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
|
71
|
+
<circle cx="12" cy="18" r="3"/><circle cx="6" cy="6" r="3"/><circle cx="18" cy="6" r="3"/>
|
|
72
|
+
<path d="M18 9v2a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2V9"/><line x1="12" y1="12" x2="12" y2="15"/>
|
|
73
|
+
</svg>
|
|
74
|
+
<span class="badge" id="activity-git-badge" style="display:none"></span>
|
|
75
|
+
</button>
|
|
76
|
+
<button class="activity-btn" id="activity-knowledge" onclick="openKnowledgeMapPanel()" title="Knowledge Map">
|
|
77
|
+
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"><!-- organic left brain half --><path d="M12 4.5C9.5 4 7 5 5.5 7C4.5 8.5 4 10 4 12C4 13.5 4.2 14.8 4.2 15.5C4 17 4.8 18.5 6.5 19.5C8 20.5 10 20 11.5 19.5L12 19.2"/><!-- fold lines --><path d="M8 7.5C6.5 9 6.5 11 7.5 12.5"/><path d="M6 14C6.5 15.5 7.5 16.5 8 18"/><!-- center spine --><line x1="12" y1="4.5" x2="12" y2="19.5"/><!-- circuit branches --><polyline points="12,7 15,7 15,5.5 21,5.5"/><polyline points="12,11 21,11"/><polyline points="12,14.5 15,14.5 15,13.5 21,13.5"/><polyline points="12,18 15,18 15,17 21,17"/><!-- endpoint nodes --><circle cx="21" cy="5.5" r="1.2"/><circle cx="21" cy="11" r="1.2"/><circle cx="21" cy="13.5" r="1.2"/><circle cx="21" cy="17" r="1.2"/></svg>
|
|
78
|
+
</button>
|
|
79
|
+
<button class="activity-btn" id="activity-guide" onclick="openGuidePanel()" title="Developer Guide">
|
|
80
|
+
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"><path d="M4 19.5A2.5 2.5 0 0 1 6.5 17H20"/><path d="M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z"/></svg>
|
|
81
|
+
</button>
|
|
82
|
+
</div>
|
|
83
|
+
<div id="sidebar-content">
|
|
84
|
+
<!-- Explorer view -->
|
|
85
|
+
<div id="sidebar-view-explorer" class="sidebar-view active">
|
|
86
|
+
<div id="explorer-header">
|
|
87
|
+
<span id="explorer-toggle" onclick="toggleExplorer()"><span class="chevron">▼</span> <span class="label-text">Explorer</span></span>
|
|
88
|
+
<button id="explorer-view-toggle" onclick="switchExplorerView(explorerViewMode === 'tree' ? 'list' : 'tree')" title="Switch to list view">List</button>
|
|
89
|
+
<button id="explorer-collapse-btn" onclick="toggleExplorer()" title="Collapse explorer">‹‹</button>
|
|
90
|
+
</div>
|
|
91
|
+
<div id="explorer-search-wrap">
|
|
92
|
+
<input type="text" id="explorer-search-input" placeholder="Search files...">
|
|
93
|
+
</div>
|
|
94
|
+
<div id="explorer-breadcrumb"></div>
|
|
95
|
+
<div id="explorer-listing"></div>
|
|
96
|
+
</div>
|
|
97
|
+
<!-- Git / Source Control view -->
|
|
98
|
+
<div id="sidebar-view-git" class="sidebar-view">
|
|
99
|
+
<div id="git-view-header">
|
|
100
|
+
<span class="git-view-title">Source Control</span>
|
|
101
|
+
<span id="git-branch-label"></span>
|
|
102
|
+
</div>
|
|
103
|
+
<div id="git-repo-picker" style="display:none">
|
|
104
|
+
<select id="git-repo-select" onchange="setActiveGitRepo(this.value)"></select>
|
|
105
|
+
</div>
|
|
106
|
+
<div id="git-view-empty" class="sidebar-empty-state" style="display:none">Working tree is clean</div>
|
|
107
|
+
<div id="git-changes-list"></div>
|
|
108
|
+
</div>
|
|
109
|
+
<!-- Session files view -->
|
|
110
|
+
<div id="sidebar-view-session" class="sidebar-view">
|
|
111
|
+
<div id="session-view-header">
|
|
112
|
+
<span>Session Files</span>
|
|
113
|
+
<span id="session-file-count"></span>
|
|
114
|
+
</div>
|
|
115
|
+
<div id="session-files-list"></div>
|
|
116
|
+
</div>
|
|
117
|
+
<!-- Session Activity timeline view (R3) -->
|
|
118
|
+
<div id="sidebar-view-timeline" class="sidebar-view">
|
|
119
|
+
<div id="timeline-view-header">
|
|
120
|
+
<span>Session Activity</span>
|
|
121
|
+
<span id="timeline-session-count"></span>
|
|
122
|
+
</div>
|
|
123
|
+
<div id="timeline-list"></div>
|
|
124
|
+
<div id="timeline-empty" class="sidebar-empty-state">No active sessions yet</div>
|
|
125
|
+
</div>
|
|
126
|
+
<!-- Sessions view (durable history from .shards/sessions/INDEX.json) -->
|
|
127
|
+
<div id="sidebar-view-sessions" class="sidebar-view">
|
|
128
|
+
<div id="sessions-view-header">
|
|
129
|
+
<span>Sessions</span>
|
|
130
|
+
<div class="sessions-actions">
|
|
131
|
+
<button class="sessions-refresh-btn" onclick="refreshSessions()" title="Refresh">↻</button>
|
|
132
|
+
</div>
|
|
133
|
+
</div>
|
|
134
|
+
<div id="sessions-filter-row">
|
|
135
|
+
<button class="sessions-filter-btn" data-status="active" onclick="setSessionsFilter('active')">Live</button>
|
|
136
|
+
<button class="sessions-filter-btn" data-status="ended" onclick="setSessionsFilter('ended')">Ended</button>
|
|
137
|
+
<button class="sessions-filter-btn" data-status="abandoned" onclick="setSessionsFilter('abandoned')">Abandoned</button>
|
|
138
|
+
</div>
|
|
139
|
+
<div id="sessions-list"></div>
|
|
140
|
+
<div id="sessions-empty" style="display:none">No sessions recorded yet.</div>
|
|
141
|
+
</div>
|
|
142
|
+
<!-- Bookmarks view -->
|
|
143
|
+
<div id="sidebar-view-bookmarks" class="sidebar-view">
|
|
144
|
+
<div id="bookmarks-view-header">
|
|
145
|
+
<span>Bookmarks</span>
|
|
146
|
+
<span id="bookmarks-count"></span>
|
|
147
|
+
</div>
|
|
148
|
+
<div id="bookmarks-list"></div>
|
|
149
|
+
<div id="bookmarks-empty" class="sidebar-empty-state">No bookmarks yet</div>
|
|
150
|
+
</div>
|
|
151
|
+
</div>
|
|
152
|
+
</aside>
|
|
153
|
+
<div class="resize-handle" id="explorer-resize"></div>
|
|
154
|
+
|
|
155
|
+
<!-- Workspace -->
|
|
156
|
+
<div id="workspace">
|
|
157
|
+
<div id="ws-tab-bar">
|
|
158
|
+
<!-- tabs rendered dynamically -->
|
|
159
|
+
<div id="ws-tab-actions">
|
|
160
|
+
<button id="close-all-btn" onclick="closeAllTabs()" title="Close all tabs">Close All</button>
|
|
161
|
+
<button id="split-btn" onclick="toggleSplit()" title="Toggle split view">Split</button>
|
|
162
|
+
</div>
|
|
163
|
+
</div>
|
|
164
|
+
<div id="ws-content">
|
|
165
|
+
<!-- Chat pane -->
|
|
166
|
+
<div id="chat-pane">
|
|
167
|
+
<div id="conv-header">
|
|
168
|
+
<span>Chat</span>
|
|
169
|
+
<button id="chat-collapse-btn" onclick="toggleChatCollapse()" title="Collapse chat">‹‹</button>
|
|
170
|
+
</div>
|
|
171
|
+
<div id="chat-search-bar">
|
|
172
|
+
<input type="text" id="chat-search-input" placeholder="Search messages...">
|
|
173
|
+
<span id="chat-search-count"></span>
|
|
174
|
+
<button class="chat-search-nav-btn" onclick="chatSearchNav(-1)" title="Previous">▲</button>
|
|
175
|
+
<button class="chat-search-nav-btn" onclick="chatSearchNav(1)" title="Next">▼</button>
|
|
176
|
+
</div>
|
|
177
|
+
<div id="agent-picker"></div>
|
|
178
|
+
<div id="messages">
|
|
179
|
+
<div class="empty-state">Select an agent to start chatting</div>
|
|
180
|
+
</div>
|
|
181
|
+
<div id="chat-input-area">
|
|
182
|
+
<div id="pinboard"></div>
|
|
183
|
+
<div id="selection-context-indicator"></div>
|
|
184
|
+
<div id="slash-suggestions"></div>
|
|
185
|
+
<div id="mode-indicator-row">
|
|
186
|
+
<button id="mode-indicator" onclick="cyclePermissionMode(1)" title="Shift+Tab to cycle modes"></button>
|
|
187
|
+
</div>
|
|
188
|
+
<div id="chat-attachments" class="chat-attachments" style="display:none"></div>
|
|
189
|
+
<textarea id="chat-input" placeholder="Message the agent... (type / for commands, paste images to attach)" rows="1"></textarea>
|
|
190
|
+
<button id="chat-send-btn" onclick="sendChatMessage()">Send</button>
|
|
191
|
+
<button id="chat-stop-btn" onclick="stopChat()">End</button>
|
|
192
|
+
</div>
|
|
193
|
+
</div>
|
|
194
|
+
|
|
195
|
+
<!-- Split resize handle -->
|
|
196
|
+
<div class="resize-handle" id="split-resize" style="display:none"></div>
|
|
197
|
+
|
|
198
|
+
<!-- File pane -->
|
|
199
|
+
<div id="file-pane">
|
|
200
|
+
<div id="file-toolbar">
|
|
201
|
+
<span id="file-path-display"></span>
|
|
202
|
+
<button class="toolbar-btn copy-path-btn" id="copy-path-btn" onclick="copyCurrentFilePath()" title="Copy relative path">⎘</button>
|
|
203
|
+
<button class="toolbar-btn" id="edit-btn" onclick="toggleEditMode()">Edit</button>
|
|
204
|
+
<button class="toolbar-btn" id="diff-btn" onclick="toggleDiffMode()" style="display:none" title="Toggle git diff view">Diff</button>
|
|
205
|
+
<button class="toolbar-btn save" id="save-btn" onclick="saveCurrentFile()" style="display:none">Save</button>
|
|
206
|
+
</div>
|
|
207
|
+
<!-- Rendered view (markdown/notebook) -->
|
|
208
|
+
<div id="file-rendered-view"></div>
|
|
209
|
+
<!-- Table view (CSV/TSV/JSON/JSONL) -->
|
|
210
|
+
<div id="table-view">
|
|
211
|
+
<div id="table-toolbar">
|
|
212
|
+
<input type="text" id="table-search" placeholder="Search all columns…">
|
|
213
|
+
<button class="toolbar-btn" id="table-download-csv" onclick="downloadTableCSV()" title="Download as CSV">CSV</button>
|
|
214
|
+
<div id="table-edit-btns">
|
|
215
|
+
<button class="toolbar-btn" onclick="tableAddRow()">+Row</button>
|
|
216
|
+
<button class="toolbar-btn" onclick="tableDeleteSelectedRows()">-Row</button>
|
|
217
|
+
<button class="toolbar-btn" onclick="tableAddColumn()">+Col</button>
|
|
218
|
+
<button class="toolbar-btn" onclick="tableDeleteColumn()">-Col</button>
|
|
219
|
+
</div>
|
|
220
|
+
<span id="table-row-count"></span>
|
|
221
|
+
</div>
|
|
222
|
+
<div id="table-container"></div>
|
|
223
|
+
</div>
|
|
224
|
+
<!-- Code editor view -->
|
|
225
|
+
<div id="file-editor">
|
|
226
|
+
<div id="line-gutter"></div>
|
|
227
|
+
<div id="file-view-area">
|
|
228
|
+
<pre id="code-view"><code id="code-view-code"></code></pre>
|
|
229
|
+
<textarea id="code-edit" spellcheck="false"></textarea>
|
|
230
|
+
<div id="monaco-file-container" style="display:none;width:100%;height:100%"></div>
|
|
231
|
+
</div>
|
|
232
|
+
</div>
|
|
233
|
+
<!-- Git diff view (Monaco diff editor) -->
|
|
234
|
+
<div id="git-diff-container"></div>
|
|
235
|
+
</div>
|
|
236
|
+
</div>
|
|
237
|
+
<!-- Terminal panel (Electron only — hidden in web UI) -->
|
|
238
|
+
<div id="terminal-panel">
|
|
239
|
+
<div id="terminal-resize-handle"></div>
|
|
240
|
+
<div id="terminal-tab-bar"></div>
|
|
241
|
+
<div id="terminal-container"></div>
|
|
242
|
+
</div>
|
|
243
|
+
</div>
|
|
244
|
+
</main>
|
|
245
|
+
|
|
246
|
+
<!-- Environment HUD -->
|
|
247
|
+
<footer id="status-bar">
|
|
248
|
+
<div class="hud-left">
|
|
249
|
+
<span class="hud-item hud-git" title="Git branch">
|
|
250
|
+
<span class="hud-icon">⎇</span>
|
|
251
|
+
<span id="hud-git-branch" class="hud-branch-name">—</span>
|
|
252
|
+
<span id="hud-git-dirty" class="hud-dirty">—</span>
|
|
253
|
+
</span>
|
|
254
|
+
<span class="hud-separator" id="hud-git-sep"></span>
|
|
255
|
+
<span class="hud-item" title="Pinned context items">
|
|
256
|
+
<span class="hud-icon">📌</span>
|
|
257
|
+
<span id="hud-pins">0 pinned</span>
|
|
258
|
+
</span>
|
|
259
|
+
<span class="hud-separator" id="hud-pr-sep" style="display:none"></span>
|
|
260
|
+
<span class="hud-item hud-pr" id="hud-pr-item" style="display:none;cursor:pointer" onclick="openPRReviewPanel()">
|
|
261
|
+
<span class="hud-icon">●</span>
|
|
262
|
+
<span id="hud-pr-text">0 PR comments</span>
|
|
263
|
+
</span>
|
|
264
|
+
</div>
|
|
265
|
+
<div class="hud-right">
|
|
266
|
+
<span class="hud-item hud-context" title="Estimated context usage">
|
|
267
|
+
<span class="hud-label">Context</span>
|
|
268
|
+
<span id="hud-context" class="hud-context-value">—</span>
|
|
269
|
+
</span>
|
|
270
|
+
</div>
|
|
271
|
+
</footer>
|
|
272
|
+
|
|
273
|
+
<!-- Resume confirmation modal -->
|
|
274
|
+
<div id="resume-modal" onclick="if(event.target===this)closeResumeModal()">
|
|
275
|
+
<div class="resume-panel">
|
|
276
|
+
<h3>Resume this chat?</h3>
|
|
277
|
+
<div class="resume-detail">
|
|
278
|
+
<div><strong>Agent:</strong> <span id="resume-modal-agent"></span></div>
|
|
279
|
+
<div><strong>Project:</strong> <span id="resume-modal-project"></span></div>
|
|
280
|
+
<div><strong>Status:</strong> <span id="resume-modal-status"></span> · <span id="resume-modal-phase"></span></div>
|
|
281
|
+
</div>
|
|
282
|
+
<div class="resume-prompt-preview" id="resume-modal-prompt"></div>
|
|
283
|
+
<div class="resume-actions">
|
|
284
|
+
<button class="btn-cancel" onclick="closeResumeModal()">Cancel</button>
|
|
285
|
+
<button class="btn-confirm" onclick="confirmResume()">Resume</button>
|
|
286
|
+
</div>
|
|
287
|
+
</div>
|
|
288
|
+
</div>
|
|
289
|
+
|
|
290
|
+
<!-- Context menu (shared) -->
|
|
291
|
+
<div id="ctx-menu" class="ctx-menu">
|
|
292
|
+
<div class="ctx-item" id="ctx-copy-path">Copy Path</div>
|
|
293
|
+
<div class="ctx-item" id="ctx-pin-file">Pin to Context</div>
|
|
294
|
+
</div>
|
|
295
|
+
|
|
296
|
+
<!-- Quick open overlay (Cmd+P) -->
|
|
297
|
+
<div id="quick-open-overlay" class="overlay-backdrop" onclick="if(event.target===this)this.classList.remove('visible')">
|
|
298
|
+
<div class="overlay-panel">
|
|
299
|
+
<input type="text" id="quick-open-input" class="overlay-input" placeholder="Open file...">
|
|
300
|
+
<div id="quick-open-results" class="overlay-results"></div>
|
|
301
|
+
</div>
|
|
302
|
+
</div>
|
|
303
|
+
|
|
304
|
+
<!-- Command palette overlay (Cmd+K) -->
|
|
305
|
+
<div id="command-palette-overlay" class="overlay-backdrop" onclick="if(event.target===this)this.classList.remove('visible')">
|
|
306
|
+
<div class="overlay-panel">
|
|
307
|
+
<input type="text" id="command-palette-input" class="overlay-input" placeholder="Type a command...">
|
|
308
|
+
<div id="command-palette-results" class="overlay-results"></div>
|
|
309
|
+
</div>
|
|
310
|
+
</div>
|
|
311
|
+
|
|
312
|
+
<!-- Settings overlay (Cmd+,) -->
|
|
313
|
+
<div id="settings-overlay" class="overlay-backdrop" onclick="if(event.target===this)this.classList.remove('visible')">
|
|
314
|
+
<div class="overlay-panel settings-panel">
|
|
315
|
+
<div style="padding:12px 16px;border-bottom:1px solid #1e1e32;font-size:13px;font-weight:600;color:#b0b0c8">Settings</div>
|
|
316
|
+
<div class="settings-section">
|
|
317
|
+
<span class="settings-label">Theme</span>
|
|
318
|
+
<select class="settings-select" id="settings-theme" onchange="applySettingsTheme(this.value)">
|
|
319
|
+
<option value="dark">Dark</option>
|
|
320
|
+
<option value="light">Light</option>
|
|
321
|
+
</select>
|
|
322
|
+
</div>
|
|
323
|
+
<div class="settings-section">
|
|
324
|
+
<span class="settings-label">UI Font Size</span>
|
|
325
|
+
<input type="number" class="settings-input" id="settings-font-size" min="10" max="20" value="13" onchange="applySettingsFontSize(this.value)">
|
|
326
|
+
</div>
|
|
327
|
+
<div class="settings-section">
|
|
328
|
+
<span class="settings-label">Editor Font Size</span>
|
|
329
|
+
<input type="number" class="settings-input" id="settings-editor-font-size" min="10" max="24" value="13" onchange="applySettingsEditorFontSize(this.value)">
|
|
330
|
+
</div>
|
|
331
|
+
<div class="settings-section">
|
|
332
|
+
<span class="settings-label">Reset Layout</span>
|
|
333
|
+
<button class="settings-btn" onclick="resetLayout()">Reset</button>
|
|
334
|
+
</div>
|
|
335
|
+
|
|
336
|
+
<div style="padding:12px 16px;border-bottom:1px solid #1e1e32;font-size:13px;font-weight:600;color:#b0b0c8;margin-top:4px">Permissions</div>
|
|
337
|
+
<div class="settings-section" style="flex-direction:column;align-items:stretch;gap:8px">
|
|
338
|
+
<div style="display:flex;align-items:center;justify-content:space-between">
|
|
339
|
+
<span class="settings-label">Preset</span>
|
|
340
|
+
<div style="display:flex;gap:6px">
|
|
341
|
+
<button class="settings-btn" onclick="applyPermissionPreset('readonly')">Read-only</button>
|
|
342
|
+
<button class="settings-btn" onclick="applyPermissionPreset('permissive')">Permissive</button>
|
|
343
|
+
</div>
|
|
344
|
+
</div>
|
|
345
|
+
</div>
|
|
346
|
+
<div id="permissions-list" class="settings-section" style="flex-direction:column;align-items:stretch;gap:4px;max-height:220px;overflow-y:auto;padding:8px 16px">
|
|
347
|
+
<span class="settings-label" style="font-size:11px;opacity:0.6">Loading...</span>
|
|
348
|
+
</div>
|
|
349
|
+
<div class="settings-section" style="gap:6px">
|
|
350
|
+
<input type="text" class="settings-input" id="permissions-custom-input" placeholder="e.g. find, grep, Bash(pytest:*)" style="width:100%;flex:1">
|
|
351
|
+
<button class="settings-btn" onclick="addCustomPermission()">Add</button>
|
|
352
|
+
</div>
|
|
353
|
+
</div>
|
|
354
|
+
</div>
|
|
355
|
+
|
|
356
|
+
<script src="https://unpkg.com/marked@4.3.0/marked.min.js"></script>
|
|
357
|
+
<script src="js/state.js"></script>
|
|
358
|
+
<script src="js/agents.js"></script>
|
|
359
|
+
<script src="js/utils.js"></script>
|
|
360
|
+
<script src="js/bookmarks.js"></script>
|
|
361
|
+
<script src="js/monaco.js"></script>
|
|
362
|
+
<script src="js/code-intel.js"></script>
|
|
363
|
+
<script src="js/markdown.js"></script>
|
|
364
|
+
<script src="js/explorer.js"></script>
|
|
365
|
+
<script src="js/tabular.js"></script>
|
|
366
|
+
<script src="js/table.js"></script>
|
|
367
|
+
<script src="js/notebook.js"></script>
|
|
368
|
+
<script src="js/panels.js"></script>
|
|
369
|
+
<script src="js/notebook-walkthrough.js"></script>
|
|
370
|
+
<script src="js/knowledge-map.js"></script>
|
|
371
|
+
<script src="js/guide.js"></script>
|
|
372
|
+
<script src="js/tabs.js"></script>
|
|
373
|
+
<script src="js/file-view.js"></script>
|
|
374
|
+
<script src="js/split-view.js"></script>
|
|
375
|
+
<script src="js/selection-context.js"></script>
|
|
376
|
+
<script src="js/pinboard.js"></script>
|
|
377
|
+
<script src="js/chat.js"></script>
|
|
378
|
+
<script src="js/timeline.js"></script>
|
|
379
|
+
<script src="js/sessions.js"></script>
|
|
380
|
+
<script src="js/quick-open.js"></script>
|
|
381
|
+
<script src="js/command-palette.js"></script>
|
|
382
|
+
<script src="js/settings.js"></script>
|
|
383
|
+
<script src="js/git.js"></script>
|
|
384
|
+
<script src="js/hud.js"></script>
|
|
385
|
+
<script src="js/terminal.js"></script>
|
|
386
|
+
<script src="js/events.js"></script>
|
|
387
|
+
<script src="js/init.js"></script>
|
|
388
|
+
</body>
|
|
389
|
+
</html>
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
// ═══════════════════════════════════════════════════════════════
|
|
2
|
+
// Agent data
|
|
3
|
+
// ═══════════════════════════════════════════════════════════════
|
|
4
|
+
|
|
5
|
+
var AGENTS = {
|
|
6
|
+
'syn': { color: '#FFD700', label: 'Syn (Orchestrator)', desc: 'Triage, delegation, and final review', type: 'orchestrator', category: 'route', keywords: [] },
|
|
7
|
+
'data-analyst': { color: '#4CAF50', label: 'Data Analyst', desc: 'Quick adhoc queries and analyses', type: 'specialist', category: 'analytics', keywords: ['sql', 'query', 'adhoc', 'quick', 'analyze', 'explore', 'summarize', 'aggregate', 'metrics', 'kpi'] },
|
|
8
|
+
'data-scientist': { color: '#2196F3', label: 'Data Scientist', desc: 'EDA, feature engineering, and predictive modeling', type: 'specialist', category: 'data', keywords: ['eda', 'exploratory', 'hypothesis', 'statistical', 'correlation', 'predict', 'notebook', 'feature', 'study', 'regression'] },
|
|
9
|
+
'data-engineer': { color: '#FF9800', label: 'Data Engineer', desc: 'Pipelines, dbt models, warehouse infrastructure', type: 'specialist', category: 'data', keywords: ['pipeline', 'etl', 'ingestion', 'source', 'warehouse', 'airflow', 'batch', 'streaming', 'integration', 'orchestrate'] },
|
|
10
|
+
'data-modeller': { color: '#00BCD4', label: 'Data Modeller', desc: 'Entity-relationship design, grain, and conformance', type: 'specialist', category: 'data', keywords: ['schema', 'erd', 'entity', 'grain', 'dimension', 'fact', 'dimensional', 'conform', 'data model', 'design'] },
|
|
11
|
+
'analytics-engineer': { color: '#8BC34A', label: 'Analytics Engineer', desc: 'dbt transformation layers, staging to mart', type: 'specialist', category: 'data', keywords: ['dbt', 'transform', 'staging', 'mart', 'intermediate', 'layer', 'model layer'] },
|
|
12
|
+
'ml-engineer': { color: '#F44336', label: 'ML Engineer', desc: 'Recommenders, ranking, classification, production ML', type: 'specialist', category: 'mlai', keywords: ['recommender', 'ranking', 'classification', 'production ml', 'train', 'inference', 'serve', 'feature store'] },
|
|
13
|
+
'ai-engineer': { color: '#9C27B0', label: 'AI Engineer', desc: 'LLM workflows, RAG, prompt engineering, agentic systems', type: 'specialist', category: 'mlai', keywords: ['llm', 'rag', 'prompt', 'agentic', 'gpt', 'embedding', 'retrieval', 'chatbot', 'openai', 'langchain', 'agent'] },
|
|
14
|
+
'applied-ml-scientist': { color: '#673AB7', label: 'Applied ML Scientist', desc: 'Novel framework design, cutting-edge methodology', type: 'specialist', category: 'mlai', keywords: ['novel', 'research', 'loss function', 'architecture', 'methodology', 'cutting-edge', 'framework design', 'custom loss'] },
|
|
15
|
+
'deep-learning-engineer': { color: '#03A9F4', label: 'Deep Learning Engineer', desc: 'Neural architecture design, training protocols, custom models', type: 'specialist', category: 'mlai', keywords: ['neural', 'pytorch', 'tensorflow', 'fine-tune', 'lora', 'transformer', 'bert', 'training', 'backbone', 'deep learning'] },
|
|
16
|
+
'mlops-engineer': { color: '#FF5722', label: 'MLOps Engineer', desc: 'Model deployment, serving, monitoring, retraining', type: 'specialist', category: 'mlai', keywords: ['deploy', 'deployment', 'serving', 'monitoring', 'drift', 'retrain', 'registry', 'kubernetes', 'docker', 'mlops', 'ci/cd'] },
|
|
17
|
+
'bi-engineer': { color: '#E91E63', label: 'BI Engineer', desc: 'Streamlit, Plotly Dash, dashboards, chart design', type: 'specialist', category: 'analytics', keywords: ['dashboard', 'chart', 'visualization', 'streamlit', 'plotly', 'dash', 'report', 'altair', 'graph', 'visual'] },
|
|
18
|
+
'backend-engineer': { color: '#9E9E9E', label: 'Backend Engineer', desc: 'Python code review, FastAPI, Pydantic, performance', type: 'review', category: 'review', keywords: ['python', 'fastapi', 'pydantic', 'code review', 'api', 'refactor', 'clean code', 'backend', 'performance'] },
|
|
19
|
+
'researcher': { color: '#795548', label: 'Researcher', desc: 'Statistical methodology and assumption validation', type: 'review', category: 'review', keywords: ['statistics', 'assumption', 'distribution', 'outlier', 'sample size', 'power analysis', 'methodology review'] },
|
|
20
|
+
'academic': { color: '#607D8B', label: 'Academic', desc: 'Safety, ethics, and efficacy review', type: 'review', category: 'review', keywords: ['safety', 'ethics', 'efficacy', 'behavior', 'cognitive', 'fairness', 'bias', 'harm', 'psychology'] },
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
function activateAgent(agentKey) {
|
|
24
|
+
currentAgent = agentKey;
|
|
25
|
+
var info = AGENTS[agentKey] || { color: '#3860c0' };
|
|
26
|
+
document.documentElement.style.setProperty('--current-accent', info.color);
|
|
27
|
+
if (agentKey) {
|
|
28
|
+
document.documentElement.setAttribute('data-agent', agentKey);
|
|
29
|
+
} else {
|
|
30
|
+
document.documentElement.removeAttribute('data-agent');
|
|
31
|
+
}
|
|
32
|
+
}
|