solo-cto-agent 0.5.1 → 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/CHANGELOG +136 -46
- package/LICENSE +21 -21
- package/README.md +902 -409
- package/bin/cli.js +1937 -177
- package/bin/cowork-engine.js +3028 -0
- package/bin/i18n.js +175 -0
- package/bin/inbound-feedback.js +243 -0
- package/bin/knowledge-gen.js +498 -0
- package/bin/local-review.js +780 -0
- package/bin/notify.js +316 -0
- package/bin/plugin-manager.js +334 -0
- package/bin/prompt-utils.js +79 -0
- package/bin/rework.js +279 -0
- package/bin/sync.js +489 -0
- package/bin/telegram-wizard.js +479 -0
- package/bin/uiux-engine.js +804 -0
- package/bin/watch.js +461 -0
- package/bin/wizard.js +277 -0
- package/docs/cowork-main-install.md +559 -0
- package/docs/cto-policy.md +137 -0
- package/docs/demo.svg +14 -14
- package/docs/external-loop-policy.md +263 -0
- package/docs/feedback-guide.md +223 -0
- package/docs/plugin-api-v2.md +285 -0
- package/docs/skill-slimming.md +124 -76
- package/docs/telegram-wizard-spec.md +302 -0
- package/docs/tier-examples.md +207 -0
- package/docs/tier-matrix.md +112 -0
- package/failure-catalog.json +111 -62
- package/failure-catalog.schema.json +26 -26
- package/package.json +40 -29
- package/skills/_shared/agent-spec.md +211 -0
- package/skills/_shared/skill-context.md +116 -0
- package/skills/build/SKILL.md +200 -377
- package/skills/build/references/architect.md +30 -0
- package/skills/build/references/avoid-patterns.md +22 -0
- package/skills/build/references/batch-automation.md +24 -0
- package/skills/build/references/build.md +18 -0
- package/skills/build/references/deploy.md +17 -0
- package/skills/build/references/execution-examples.md +7 -0
- package/skills/build/references/prereq-scan.md +42 -0
- package/skills/build/references/review-antipatterns.md +11 -0
- package/skills/craft/SKILL.md +196 -258
- package/skills/craft/references/component-specs.md +154 -0
- package/skills/craft/references/execution-examples.md +76 -0
- package/skills/craft/references/motion-system.md +53 -0
- package/skills/craft/references/oklch-palette.md +67 -0
- package/skills/craft/references/shadow-system.md +36 -0
- package/skills/craft/references/type-scale.md +29 -0
- package/skills/craft/references/typography-pairings.md +15 -0
- package/skills/memory/SKILL.md +214 -234
- package/skills/memory/references/execution-guide.md +145 -0
- package/skills/memory/references/record-format.md +92 -0
- package/skills/memory/references/storage-structure.md +185 -0
- package/skills/orchestrate/SKILL.md +161 -141
- package/skills/review/SKILL.md +235 -195
- package/skills/review/references/scoring-criteria.md +129 -0
- package/skills/review/references/synthesis-framework.md +106 -0
- package/skills/review/references/usage-patterns.md +118 -0
- package/skills/ship/SKILL.md +201 -282
- package/skills/ship/references/error-checklist.md +15 -0
- package/skills/ship/references/execution-examples.md +5 -0
- package/skills/ship/references/failure-classification.md +23 -0
- package/skills/ship/references/pre-deploy-checklist.md +15 -0
- package/skills/ship/references/recovery-loop.md +20 -0
- package/skills/ship/references/reporting-format.md +31 -0
- package/skills/spark/SKILL.md +164 -269
- package/skills/spark/references/01-seed-stage.md +39 -0
- package/skills/spark/references/02-market-framing.md +83 -0
- package/skills/spark/references/03-competitor-scan.md +131 -0
- package/skills/spark/references/04-unit-economics.md +228 -0
- package/skills/spark/references/05-scenarios.md +175 -0
- package/skills/spark/references/06-prd-direction.md +221 -0
- package/skills/spark/references/anti-patterns-and-tone.md +143 -0
- package/templates/builder-defaults/agent-scores.json +23 -0
- package/templates/builder-defaults/routing-policy.json +44 -0
- package/templates/context.md +29 -29
- package/templates/orchestrator/.claude/agents/implementer.md +10 -0
- package/templates/orchestrator/.claude/agents/integrator.md +10 -0
- package/templates/orchestrator/.claude/agents/reviewer.md +10 -0
- package/templates/orchestrator/.codex/prompts/implement.md +10 -0
- package/templates/orchestrator/.codex/prompts/integrate.md +10 -0
- package/templates/orchestrator/.codex/prompts/review.md +10 -0
- package/templates/orchestrator/.env.example +16 -0
- package/templates/orchestrator/.github/workflows/agent-score-update.yml +46 -0
- package/templates/orchestrator/.github/workflows/auto-diagnose.yml +27 -0
- package/templates/orchestrator/.github/workflows/ci.yml +60 -0
- package/templates/orchestrator/.github/workflows/claude-auto.yml +50 -0
- package/templates/orchestrator/.github/workflows/codex-auto.yml +28 -0
- package/templates/orchestrator/.github/workflows/combined-pr-with-uiux.yml +88 -0
- package/templates/orchestrator/.github/workflows/combined-pr.yml +30 -0
- package/templates/orchestrator/.github/workflows/comparison-report.yml +28 -0
- package/templates/orchestrator/.github/workflows/cross-review-dispatch.yml +28 -0
- package/templates/orchestrator/.github/workflows/cross-review.yml +30 -0
- package/templates/orchestrator/.github/workflows/daily-briefing.yml +24 -0
- package/templates/orchestrator/.github/workflows/decision-insights.yml +22 -0
- package/templates/orchestrator/.github/workflows/decision-queue.yml +25 -0
- package/templates/orchestrator/.github/workflows/meta-report.yml +24 -0
- package/templates/orchestrator/.github/workflows/ops-validate.yml +37 -0
- package/templates/orchestrator/.github/workflows/orchestrator-check.yml +24 -0
- package/templates/orchestrator/.github/workflows/preview-ready.yml +15 -0
- package/templates/orchestrator/.github/workflows/preview-summary.yml +209 -0
- package/templates/orchestrator/.github/workflows/rework-auto.yml +29 -0
- package/templates/orchestrator/.github/workflows/route-issue.yml +125 -0
- package/templates/orchestrator/.github/workflows/telegram-notify.yml +43 -0
- package/templates/orchestrator/.github/workflows/telegram-webhook-sync.yml +23 -0
- package/templates/orchestrator/.github/workflows/uiux-quality-gate.yml +269 -0
- package/templates/orchestrator/.github/workflows/visual-check.yml +77 -0
- package/templates/orchestrator/CLAUDE.md +14 -0
- package/templates/orchestrator/agents/README.md +42 -0
- package/templates/orchestrator/agents/implementer.md +34 -0
- package/templates/orchestrator/agents/integrator.md +26 -0
- package/templates/orchestrator/agents/reviewer.md +36 -0
- package/templates/orchestrator/api/health.ts +39 -0
- package/templates/orchestrator/api/orchestrate/assign.ts +79 -0
- package/templates/orchestrator/api/scores/index.ts +49 -0
- package/templates/orchestrator/api/telegram/notify.ts +21 -0
- package/templates/orchestrator/api/telegram-webhook.js +1330 -0
- package/templates/orchestrator/api/webhook/github.ts +97 -0
- package/templates/orchestrator/docs/coding_rules.md +13 -0
- package/templates/orchestrator/docs/meta-issues/orchestrator-agent-scoring-automation-v1.md +82 -0
- package/templates/orchestrator/docs/meta-issues/orchestrator-ci-hardening-v1.md +80 -0
- package/templates/orchestrator/docs/meta-issues/orchestrator-hardening-v1.md +208 -0
- package/templates/orchestrator/docs/meta-issues/orchestrator-meta-validation-v1.md +85 -0
- package/templates/orchestrator/docs/meta-issues/orchestrator-routing-engine-v1.md +87 -0
- package/templates/orchestrator/docs/meta-issues/orchestrator-telegram-decision-loop-v1.md +85 -0
- package/templates/orchestrator/docs/product_requirements.md +20 -0
- package/templates/orchestrator/docs/test_policy.md +15 -0
- package/templates/orchestrator/lib/scores.ts +147 -0
- package/templates/orchestrator/lib/telegram.ts +57 -0
- package/templates/orchestrator/lib/types.ts +50 -0
- package/templates/orchestrator/ops/agents/claude-reviewer.js +153 -0
- package/templates/orchestrator/ops/agents/claude-worker.js +313 -0
- package/templates/orchestrator/ops/agents/codex-reporter.js +39 -0
- package/templates/orchestrator/ops/agents/codex-worker.js +319 -0
- package/templates/orchestrator/ops/agents/cross-reviewer.js +122 -0
- package/templates/orchestrator/ops/agents/rework-agent.js +286 -0
- package/templates/orchestrator/ops/agents/status-checker.js +90 -0
- package/templates/orchestrator/ops/codex-prompts.md +100 -0
- package/templates/orchestrator/ops/config/design-guidelines.json +117 -0
- package/templates/orchestrator/ops/integrations/telegram-commands.json +34 -0
- package/templates/orchestrator/ops/lib/build-verifier.js +125 -0
- package/templates/orchestrator/ops/lib/circuit-breaker.js +130 -0
- package/templates/orchestrator/ops/lib/repo-health-checker.js +115 -0
- package/templates/orchestrator/ops/lib/uiux-utils.js +399 -0
- package/templates/orchestrator/ops/orchestrator/CHANGELOG.md +45 -0
- package/templates/orchestrator/ops/orchestrator/README.md +38 -0
- package/templates/orchestrator/ops/orchestrator/agent-scores.json +35 -0
- package/templates/orchestrator/ops/orchestrator/decision-log.json +5 -0
- package/templates/orchestrator/ops/orchestrator/decision-message.js +566 -0
- package/templates/orchestrator/ops/orchestrator/error-patterns.md +17 -0
- package/templates/orchestrator/ops/orchestrator/meta-validation-policy.json +63 -0
- package/templates/orchestrator/ops/orchestrator/quality-log.md +9 -0
- package/templates/orchestrator/ops/orchestrator/routing-engine.js +266 -0
- package/templates/orchestrator/ops/orchestrator/routing-policy.json +59 -0
- package/templates/orchestrator/ops/orchestrator/schemas/agent-scores.schema.json +72 -0
- package/templates/orchestrator/ops/orchestrator/schemas/meta-validation-policy.schema.json +65 -0
- package/templates/orchestrator/ops/orchestrator/schemas/round-log.schema.json +56 -0
- package/templates/orchestrator/ops/orchestrator/schemas/routing-policy.schema.json +62 -0
- package/templates/orchestrator/ops/orchestrator/skill-changelog.md +17 -0
- package/templates/orchestrator/ops/orchestrator/telegram-settings.json +10 -0
- package/templates/orchestrator/ops/orchestrator/trigger-keywords.json +47 -0
- package/templates/orchestrator/ops/orchestrator/update-agent-scores.js +274 -0
- package/templates/orchestrator/ops/orchestrator/validate-orchestrator.js +317 -0
- package/templates/orchestrator/ops/orchestrator/visual-baselines.json +1 -0
- package/templates/orchestrator/ops/package-lock.json +71 -0
- package/templates/orchestrator/ops/package.json +17 -0
- package/templates/orchestrator/ops/scripts/auto-diagnose.js +157 -0
- package/templates/orchestrator/ops/scripts/combined-pr.js +197 -0
- package/templates/orchestrator/ops/scripts/comparison-report.js +310 -0
- package/templates/orchestrator/ops/scripts/daily-briefing.js +270 -0
- package/templates/orchestrator/ops/scripts/decision-insights.js +140 -0
- package/templates/orchestrator/ops/scripts/decision-queue.js +239 -0
- package/templates/orchestrator/ops/scripts/meta-report.js +157 -0
- package/templates/orchestrator/ops/scripts/sync-preview-workflow.js +91 -0
- package/templates/orchestrator/ops/scripts/uiux-code-review.js +205 -0
- package/templates/orchestrator/ops/scripts/uiux-cross-verify.js +382 -0
- package/templates/orchestrator/ops/scripts/uiux-suggest-fixes.js +326 -0
- package/templates/orchestrator/ops/scripts/uiux-visual-review.js +211 -0
- package/templates/orchestrator/ops/scripts/visual-check.js +294 -0
- package/templates/orchestrator/package.json +24 -0
- package/templates/orchestrator/tsconfig.json +36 -0
- package/templates/orchestrator/vercel.json +12 -0
- package/templates/product-repo/.env.example +17 -0
- package/templates/product-repo/.github/ISSUE_TEMPLATE/dual-agent-task.md +25 -0
- package/templates/product-repo/.github/pull_request_template.md +24 -0
- package/templates/product-repo/.github/workflows/claude-auto.yml +60 -0
- package/templates/product-repo/.github/workflows/codex-auto.yml +60 -0
- package/templates/product-repo/.github/workflows/comparison-dispatch.yml +59 -0
- package/templates/product-repo/.github/workflows/cross-review-dispatch.yml +27 -0
- package/templates/product-repo/.github/workflows/cross-review.yml +36 -0
- package/templates/product-repo/.github/workflows/preview-summary.yml +146 -0
- package/templates/product-repo/.github/workflows/rework-dispatch.yml +51 -0
- package/templates/product-repo/.github/workflows/telegram-notify.yml +94 -0
- package/templates/product-repo/STATE.md +30 -0
- package/templates/project.md +38 -38
- package/tiers.json +149 -0
package/CHANGELOG
CHANGED
|
@@ -1,46 +1,136 @@
|
|
|
1
|
-
# Changelog
|
|
2
|
-
|
|
3
|
-
##
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
*
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
*
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
*
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
*
|
|
44
|
-
|
|
45
|
-
*
|
|
46
|
-
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## 1.1.0 — Tier-aware reviews, security signals, plugins & telegram
|
|
4
|
+
|
|
5
|
+
**Theme**: closing the last gaps around signal quality and agent
|
|
6
|
+
extensibility. The review loop now reasons about Haiku/Sonnet/Opus
|
|
7
|
+
tier-appropriately, surfaces live CVE/GHSA advisories via OSV.dev,
|
|
8
|
+
captures screenshots without Playwright, and gains a first-cut
|
|
9
|
+
plugin system + experimental telegram setup wizard.
|
|
10
|
+
|
|
11
|
+
### External signals (PR-G4)
|
|
12
|
+
* **T2 Security Advisories (OSV.dev)** — CVE + GHSA scan across
|
|
13
|
+
`dependencies` + `devDependencies`. Severity normalized (DB-specific
|
|
14
|
+
> CVSS numeric > UNKNOWN) and merged into the external-knowledge
|
|
15
|
+
context block. Gate: `COWORK_EXTERNAL_KNOWLEDGE_SECURITY=0` to skip.
|
|
16
|
+
|
|
17
|
+
### Review tiering (PR-G2)
|
|
18
|
+
* **Per-tier Claude model resolution** — Haiku (cheap triage) / Sonnet
|
|
19
|
+
(default) / Opus (deep review) selected automatically based on watch
|
|
20
|
+
tier. Overridable via `ANTHROPIC_MODEL_HAIKU|SONNET|OPUS`.
|
|
21
|
+
|
|
22
|
+
### UI/UX loop (PR-G5)
|
|
23
|
+
* **Playwright-free screenshot capture** — `uiux vision-review --url`
|
|
24
|
+
and `uiux capture --url` now fall back to thum.io when Playwright is
|
|
25
|
+
unavailable. Viewports: mobile 375x812 / tablet 768x1024 / desktop
|
|
26
|
+
1280x800.
|
|
27
|
+
|
|
28
|
+
### Plugins & integrations (PR-G6 / G7)
|
|
29
|
+
* **`docs/plugin-api-v2.md`** — capability manifest spec
|
|
30
|
+
(env/net/fs/cli/hook/schedule prefixes), contribution points, agent
|
|
31
|
+
targeting (`claude` / `codex` / `cowork` / `headless`).
|
|
32
|
+
* **`plugin` subcommand** — filesystem-only manager:
|
|
33
|
+
`solo-cto-agent plugin list|show|add --path <dir>|remove`. Records
|
|
34
|
+
metadata only; does NOT execute plugin code. Runtime loader lands
|
|
35
|
+
in a follow-up behind the capability gate.
|
|
36
|
+
* **`telegram wizard`** (experimental — `SOLO_CTO_EXPERIMENTAL=1`)
|
|
37
|
+
— one-command bot token + chat_id capture + `.env` / shell profile
|
|
38
|
+
/ GitHub secret writeback + live sendMessage verification.
|
|
39
|
+
* **`docs/telegram-wizard-spec.md`** — full spec including failure
|
|
40
|
+
modes and i18n hooks.
|
|
41
|
+
|
|
42
|
+
### Developer experience
|
|
43
|
+
* **375 tests** (up from 247 in 1.0.0) across 28 files — all offline,
|
|
44
|
+
all network calls stubbed via injected `fetchImpl`.
|
|
45
|
+
* **Shared `prompt-utils.js`** — `ask` / `askYesNo` / `askChoice` /
|
|
46
|
+
`isTTY` / `createRl` extracted from `wizard.js` for future wizards.
|
|
47
|
+
* **npm publish automation** — tag `v*` now triggers full CI +
|
|
48
|
+
`npm publish` + GitHub Release in one workflow.
|
|
49
|
+
|
|
50
|
+
### Upgrade notes
|
|
51
|
+
* No breaking changes. All new features are additive and gated on
|
|
52
|
+
env vars (`COWORK_EXTERNAL_KNOWLEDGE_SECURITY`,
|
|
53
|
+
`SOLO_CTO_EXPERIMENTAL`).
|
|
54
|
+
* `solo-cto-agent plugin` and `solo-cto-agent telegram` are new
|
|
55
|
+
commands — existing commands are unchanged.
|
|
56
|
+
|
|
57
|
+
## 1.0.0 — First stable release
|
|
58
|
+
|
|
59
|
+
**Why 1.0**: the loop is now closable end-to-end. Previous 0.x releases were
|
|
60
|
+
the skill pack alone. 1.0 adds the three-tier external-signal framework,
|
|
61
|
+
self-cross-review, inbound feedback, and honest signal reporting — the pieces
|
|
62
|
+
needed to trust a single-agent loop for production work.
|
|
63
|
+
|
|
64
|
+
### External-loop framework (PR-E1 through E5)
|
|
65
|
+
* T1 Peer Model — OpenAI Codex cross-check via `dual-review`
|
|
66
|
+
* T2 External Knowledge — npm registry package-currency scan surfaces major/minor/deprecated deltas
|
|
67
|
+
* T3 Ground Truth — Vercel deployment + Supabase log signals injected into the review prompt
|
|
68
|
+
* Self-loop warning — boxed notice when no external signals are active (single-model blind-spot alert)
|
|
69
|
+
* Inbound feedback channel — `feedback record` + Slack/GitHub dispatch
|
|
70
|
+
|
|
71
|
+
### Dogfood-driven fixes (PR-F1, F2)
|
|
72
|
+
* default-branch auto-detection (B1) — no more hardcoded `main`, works on `master` / `develop` repos
|
|
73
|
+
* `--target <base>` override (B2) — diff against any ref
|
|
74
|
+
* `--dry-run` now surfaces the self-loop warning without API spend (B3)
|
|
75
|
+
* README flags match reality (B4) — dead examples removed
|
|
76
|
+
* `--json | jq` pipe-safety (B5) — `setLogChannel("stderr")` keeps stdout pure JSON
|
|
77
|
+
* **honest signal reporting (F2)** — `activeCount` now reflects actual fetch outcome, not just env flags. A tier set-but-silent no longer gets counted as "active", and hints surface `enabled-but-silent: T2 (env set, no data)` for debugging.
|
|
78
|
+
|
|
79
|
+
### Developer experience
|
|
80
|
+
* 247 tests (up from ~180 in 0.6.x) covering CLI, engine parser, watch gating, self-loop warning, and new drive-run regressions
|
|
81
|
+
* Package-validate + Changelog + Test CI workflows all green
|
|
82
|
+
|
|
83
|
+
## 0.6.0
|
|
84
|
+
|
|
85
|
+
* added `solo-cto-agent lint` command — flags skills over 150 lines, missing frontmatter, large code blocks
|
|
86
|
+
* added CLI tests (init, status, lint, --force, MISSING state) — 8 new test cases
|
|
87
|
+
* added npm pack dry-run test — verifies tarball includes required files and excludes tests/CI
|
|
88
|
+
* expanded failure-catalog from 8 to 15 patterns (Next.js types, edge runtime, JWT, peer deps, DB migrations, deploy timeouts)
|
|
89
|
+
* added SECURITY.md
|
|
90
|
+
* applied references/ pattern to build skill (377→197 lines) and ship skill (283→124 lines)
|
|
91
|
+
* improved README architecture diagram (full skill system, not just error flow)
|
|
92
|
+
|
|
93
|
+
## 0.5.1
|
|
94
|
+
|
|
95
|
+
* added skill slimming docs (references/ pattern with measured results)
|
|
96
|
+
* fixed BOM encoding in CONTRIBUTING
|
|
97
|
+
* fixed corrupted FAQ section in README
|
|
98
|
+
* cleaned up README: removed duplicate sections, consolidated post-install guide
|
|
99
|
+
* updated ROADMAP with v0.5.0 completion and v0.6.0 plan
|
|
100
|
+
|
|
101
|
+
## 0.5.0
|
|
102
|
+
|
|
103
|
+
* added CLI init/status commands for npm distribution
|
|
104
|
+
* added demo asset, architecture diagram, and updated Quick Start
|
|
105
|
+
* expanded CONTRIBUTING and templates
|
|
106
|
+
|
|
107
|
+
## 0.4.0
|
|
108
|
+
|
|
109
|
+
* added package.json and basic test tooling
|
|
110
|
+
* added failure-catalog.json and schema validation
|
|
111
|
+
* added CI test workflow for PRs
|
|
112
|
+
* added ROADMAP.md
|
|
113
|
+
|
|
114
|
+
## 0.3.0
|
|
115
|
+
|
|
116
|
+
* added .cursorrules for Cursor IDE support
|
|
117
|
+
* added .windsurfrules for Windsurf (Cascade) support
|
|
118
|
+
* added .github/copilot-instructions.md for GitHub Copilot support
|
|
119
|
+
* all three rule files share the same CTO philosophy, adapted to each tool's format
|
|
120
|
+
|
|
121
|
+
## 0.2.0
|
|
122
|
+
|
|
123
|
+
* rewrote README to sound more human and less sales-heavy
|
|
124
|
+
* improved `setup.sh` toward safer repeat installs and updates
|
|
125
|
+
* softened over-strong automation claims in `build`
|
|
126
|
+
* clarified `craft` as intentionally opinionated
|
|
127
|
+
* tightened `review` wording
|
|
128
|
+
* added contribution guidance
|
|
129
|
+
* added example files for practical usage
|
|
130
|
+
|
|
131
|
+
## 0.1.0
|
|
132
|
+
|
|
133
|
+
* initial public release
|
|
134
|
+
* added build, ship, craft, spark, review, and memory skills
|
|
135
|
+
* added setup script
|
|
136
|
+
* added templates for context and project state
|
package/LICENSE
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2026 seunghunbae-3svs
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 seunghunbae-3svs
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|