@mcptoolshop/shipcheck 1.0.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +40 -0
- package/README.es.md +81 -81
- package/README.fr.md +81 -81
- package/README.hi.md +81 -81
- package/README.it.md +81 -81
- package/README.ja.md +81 -81
- package/README.md +17 -10
- package/README.pt-BR.md +81 -81
- package/README.zh.md +81 -81
- package/bin/shipcheck.mjs +15 -7
- package/package.json +5 -1
package/README.it.md
CHANGED
|
@@ -1,64 +1,64 @@
|
|
|
1
|
-
<p align="center">
|
|
2
|
-
<a href="README.ja.md">日本語</a> | <a href="README.zh.md">中文</a> | <a href="README.es.md">Español</a> | <a href="README.fr.md">Français</a> | <a href="README.hi.md">हिन्दी</a> | <a href="README.md">English</a> | <a href="README.pt-BR.md">Português (BR)</a>
|
|
3
|
-
</p>
|
|
4
|
-
|
|
1
|
+
<p align="center">
|
|
2
|
+
<a href="README.ja.md">日本語</a> | <a href="README.zh.md">中文</a> | <a href="README.es.md">Español</a> | <a href="README.fr.md">Français</a> | <a href="README.hi.md">हिन्दी</a> | <a href="README.md">English</a> | <a href="README.pt-BR.md">Português (BR)</a>
|
|
3
|
+
</p>
|
|
4
|
+
|
|
5
5
|
<p align="center">
|
|
6
6
|
<img src="https://raw.githubusercontent.com/mcp-tool-shop-org/brand/main/logos/shipcheck/readme.jpg" alt="Shipcheck" width="400">
|
|
7
7
|
</p>
|
|
8
|
-
|
|
8
|
+
|
|
9
9
|
<p align="center">
|
|
10
10
|
<a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue" alt="MIT License"></a>
|
|
11
11
|
<a href="https://mcp-tool-shop-org.github.io/shipcheck/"><img src="https://img.shields.io/badge/Landing_Page-live-blue" alt="Landing Page"></a>
|
|
12
12
|
</p>
|
|
13
|
-
|
|
13
|
+
|
|
14
14
|
<p align="center">
|
|
15
15
|
Product standards for MCP Tool Shop.<br>
|
|
16
16
|
Templates, contracts, and adoption guides that define what "done" means before anything ships.
|
|
17
17
|
</p>
|
|
18
|
-
|
|
18
|
+
|
|
19
19
|
---
|
|
20
|
-
|
|
21
|
-
## Perché
|
|
22
|
-
|
|
23
|
-
"Fatto" significava che il codice funzionava. Questo non è sufficiente. Un prodotto è costituito da codice + sicurezza + gestione degli errori + documentazione + identità + pratiche di rilascio. Shipcheck definisce gli standard.
|
|
24
|
-
|
|
25
|
-
## Cosa c'è qui
|
|
26
|
-
|
|
27
|
-
| Standard | Cosa copre |
|
|
28
|
-
|----------|----------------|
|
|
29
|
-
| [Ship Gate](templates/SHIP_GATE.md) | 27 controlli preliminari "hard" + 4 controlli preliminari "soft" |
|
|
30
|
-
| [Error Contract](contracts/error-contract.md) | Standard strutturato per la gestione degli errori con registro del codice |
|
|
31
|
-
| [Security Baseline](templates/SECURITY.md) | Email di segnalazione, tempi di risposta, ambito delle minacce |
|
|
32
|
-
| [Handbook](templates/HANDBOOK.md) | Manuale operativo per strumenti complessi |
|
|
33
|
-
| [Scorecard](templates/SCORECARD.md) | Valutazione pre/post correzione |
|
|
34
|
-
| [Adoption Guide](ADOPTION.md) | Applica Shipcheck a qualsiasi repository in meno di 30 minuti |
|
|
35
|
-
|
|
36
|
-
## Guida rapida
|
|
37
|
-
|
|
38
|
-
1. Leggere [ADOPTION.md](ADOPTION.md)
|
|
39
|
-
2. Copiare `templates/SHIP_GATE.md` nella directory principale del repository
|
|
40
|
-
3. Spuntare le voci applicabili, contrassegnare le voci non applicabili con `SKIP:`
|
|
41
|
-
4. Rilasciare quando tutti i controlli preliminari "hard" sono superati
|
|
42
|
-
|
|
43
|
-
## Come funziona
|
|
44
|
-
|
|
45
|
-
I **controlli preliminari "hard"** (A-D) bloccano il rilascio:
|
|
46
|
-
|
|
47
|
-
- **A. Sicurezza di base** — SECURITY.md, modello delle minacce, nessuna informazione sensibile, nessuna telemetria, impostazione di sicurezza predefinita
|
|
48
|
-
- **B. Gestione degli errori** — struttura degli errori (codice/messaggio/suggerimento/riprovabile), output sicuro, gestione degli errori controllata
|
|
49
|
-
- **C. Documentazione per l'utente** — README, CHANGELOG, LICENZA, documentazione dello strumento
|
|
50
|
-
- **D. Pratiche di rilascio** — verifica dello script, allineamento delle versioni, scansione delle dipendenze, file di blocco
|
|
51
|
-
|
|
52
|
-
Il **controllo preliminare "soft"** (E) non blocca, ma definisce il "quadro generale":
|
|
53
|
-
|
|
54
|
-
- **E. Identità** — logo, traduzioni, pagina di presentazione, metadati del repository
|
|
55
|
-
|
|
56
|
-
Il controllo preliminare indica **cosa** deve essere vero, non **come** implementarlo. I tag di applicabilità (`[all]`, `[npm]`, `[mcp]`, `[cli]`, `[desktop]`, `[vsix]`, `[container]`) impediscono che si verifichino situazioni imbarazzanti in repository in cui le voci non sono applicabili.
|
|
57
|
-
|
|
58
|
-
## Panoramica del contratto di gestione degli errori
|
|
59
|
-
|
|
60
|
-
**Livello 1 — Struttura (obbligatorio ovunque):**
|
|
61
|
-
|
|
20
|
+
|
|
21
|
+
## Perché
|
|
22
|
+
|
|
23
|
+
"Fatto" significava che il codice funzionava. Questo non è sufficiente. Un prodotto è costituito da codice + sicurezza + gestione degli errori + documentazione + identità + pratiche di rilascio. Shipcheck definisce gli standard.
|
|
24
|
+
|
|
25
|
+
## Cosa c'è qui
|
|
26
|
+
|
|
27
|
+
| Standard | Cosa copre |
|
|
28
|
+
|----------|----------------|
|
|
29
|
+
| [Ship Gate](templates/SHIP_GATE.md) | 27 controlli preliminari "hard" + 4 controlli preliminari "soft" |
|
|
30
|
+
| [Error Contract](contracts/error-contract.md) | Standard strutturato per la gestione degli errori con registro del codice |
|
|
31
|
+
| [Security Baseline](templates/SECURITY.md) | Email di segnalazione, tempi di risposta, ambito delle minacce |
|
|
32
|
+
| [Handbook](templates/HANDBOOK.md) | Manuale operativo per strumenti complessi |
|
|
33
|
+
| [Scorecard](templates/SCORECARD.md) | Valutazione pre/post correzione |
|
|
34
|
+
| [Adoption Guide](ADOPTION.md) | Applica Shipcheck a qualsiasi repository in meno di 30 minuti |
|
|
35
|
+
|
|
36
|
+
## Guida rapida
|
|
37
|
+
|
|
38
|
+
1. Leggere [ADOPTION.md](ADOPTION.md)
|
|
39
|
+
2. Copiare `templates/SHIP_GATE.md` nella directory principale del repository
|
|
40
|
+
3. Spuntare le voci applicabili, contrassegnare le voci non applicabili con `SKIP:`
|
|
41
|
+
4. Rilasciare quando tutti i controlli preliminari "hard" sono superati
|
|
42
|
+
|
|
43
|
+
## Come funziona
|
|
44
|
+
|
|
45
|
+
I **controlli preliminari "hard"** (A-D) bloccano il rilascio:
|
|
46
|
+
|
|
47
|
+
- **A. Sicurezza di base** — SECURITY.md, modello delle minacce, nessuna informazione sensibile, nessuna telemetria, impostazione di sicurezza predefinita
|
|
48
|
+
- **B. Gestione degli errori** — struttura degli errori (codice/messaggio/suggerimento/riprovabile), output sicuro, gestione degli errori controllata
|
|
49
|
+
- **C. Documentazione per l'utente** — README, CHANGELOG, LICENZA, documentazione dello strumento
|
|
50
|
+
- **D. Pratiche di rilascio** — verifica dello script, allineamento delle versioni, scansione delle dipendenze, file di blocco
|
|
51
|
+
|
|
52
|
+
Il **controllo preliminare "soft"** (E) non blocca, ma definisce il "quadro generale":
|
|
53
|
+
|
|
54
|
+
- **E. Identità** — logo, traduzioni, pagina di presentazione, metadati del repository
|
|
55
|
+
|
|
56
|
+
Il controllo preliminare indica **cosa** deve essere vero, non **come** implementarlo. I tag di applicabilità (`[all]`, `[npm]`, `[mcp]`, `[cli]`, `[desktop]`, `[vsix]`, `[container]`) impediscono che si verifichino situazioni imbarazzanti in repository in cui le voci non sono applicabili.
|
|
57
|
+
|
|
58
|
+
## Panoramica del contratto di gestione degli errori
|
|
59
|
+
|
|
60
|
+
**Livello 1 — Struttura (obbligatorio ovunque):**
|
|
61
|
+
|
|
62
62
|
```json
|
|
63
63
|
{
|
|
64
64
|
"code": "INPUT_TEXT_EMPTY",
|
|
@@ -67,39 +67,39 @@ Il controllo preliminare indica **cosa** deve essere vero, non **come** implemen
|
|
|
67
67
|
"retryable": false
|
|
68
68
|
}
|
|
69
69
|
```
|
|
70
|
-
|
|
71
|
-
**Livello 2 — Tipo di base + codici di uscita (CLI/MCP/desktop):**
|
|
72
|
-
|
|
73
|
-
| Codice di uscita | Significato |
|
|
74
|
-
|-----------|---------|
|
|
75
|
-
| 0 | OK |
|
|
76
|
-
| 1 | Errore dell'utente (input errato, configurazione mancante) |
|
|
77
|
-
| 2 | Errore di runtime (crash, errore del backend) |
|
|
78
|
-
| 3 | Successo parziale (alcuni elementi hanno avuto successo) |
|
|
79
|
-
|
|
80
|
-
I codici di errore utilizzano prefissi con spazi dei nomi: `IO_`, `CONFIG_`, `PERM_`, `DEP_`, `RUNTIME_`, `PARTIAL_`, `INPUT_`, `STATE_`. I codici sono stabili una volta rilasciati.
|
|
81
|
-
|
|
82
|
-
## Implementazione di riferimento
|
|
83
|
-
|
|
84
|
-
[mcp-voice-soundboard](https://github.com/mcp-tool-shop-org/mcp-voice-soundboard) è stato il primo repository a superare il controllo preliminare Ship Gate, ottenendo un punteggio di **46/50** dopo la correzione.
|
|
85
|
-
|
|
86
|
-
## Scheda di valutazione
|
|
87
|
-
|
|
88
|
-
| Categoria | Punteggio | Note |
|
|
89
|
-
|----------|-------|-------|
|
|
90
|
-
| A. Sicurezza | 10/10 | SECURITY.md, nessun codice eseguibile, nessuna raccolta dati |
|
|
91
|
-
| B. Gestione degli errori | N/A | Repository standard — nessun codice per la gestione degli errori |
|
|
92
|
-
| C. Documentazione per l'utente | 10/10 | README, CHANGELOG, ADOPTION, tutte le voci documentate |
|
|
93
|
-
| D. Pratiche di rilascio | 8/10 | Nessun codice da verificare/testare, tutte le versioni degli standard sono gestite |
|
|
94
|
-
| E. Identità | 10/10 | Logo, traduzioni, pagina di presentazione, metadati |
|
|
95
|
-
| **Total** | **38/40** | B escluso (non applicabile) |
|
|
96
|
-
|
|
97
|
-
## Licenza
|
|
98
|
-
|
|
99
|
-
[MIT](LICENSE)
|
|
100
|
-
|
|
70
|
+
|
|
71
|
+
**Livello 2 — Tipo di base + codici di uscita (CLI/MCP/desktop):**
|
|
72
|
+
|
|
73
|
+
| Codice di uscita | Significato |
|
|
74
|
+
|-----------|---------|
|
|
75
|
+
| 0 | OK |
|
|
76
|
+
| 1 | Errore dell'utente (input errato, configurazione mancante) |
|
|
77
|
+
| 2 | Errore di runtime (crash, errore del backend) |
|
|
78
|
+
| 3 | Successo parziale (alcuni elementi hanno avuto successo) |
|
|
79
|
+
|
|
80
|
+
I codici di errore utilizzano prefissi con spazi dei nomi: `IO_`, `CONFIG_`, `PERM_`, `DEP_`, `RUNTIME_`, `PARTIAL_`, `INPUT_`, `STATE_`. I codici sono stabili una volta rilasciati.
|
|
81
|
+
|
|
82
|
+
## Implementazione di riferimento
|
|
83
|
+
|
|
84
|
+
[mcp-voice-soundboard](https://github.com/mcp-tool-shop-org/mcp-voice-soundboard) è stato il primo repository a superare il controllo preliminare Ship Gate, ottenendo un punteggio di **46/50** dopo la correzione.
|
|
85
|
+
|
|
86
|
+
## Scheda di valutazione
|
|
87
|
+
|
|
88
|
+
| Categoria | Punteggio | Note |
|
|
89
|
+
|----------|-------|-------|
|
|
90
|
+
| A. Sicurezza | 10/10 | SECURITY.md, nessun codice eseguibile, nessuna raccolta dati |
|
|
91
|
+
| B. Gestione degli errori | N/A | Repository standard — nessun codice per la gestione degli errori |
|
|
92
|
+
| C. Documentazione per l'utente | 10/10 | README, CHANGELOG, ADOPTION, tutte le voci documentate |
|
|
93
|
+
| D. Pratiche di rilascio | 8/10 | Nessun codice da verificare/testare, tutte le versioni degli standard sono gestite |
|
|
94
|
+
| E. Identità | 10/10 | Logo, traduzioni, pagina di presentazione, metadati |
|
|
95
|
+
| **Total** | **38/40** | B escluso (non applicabile) |
|
|
96
|
+
|
|
97
|
+
## Licenza
|
|
98
|
+
|
|
99
|
+
[MIT](LICENSE)
|
|
100
|
+
|
|
101
101
|
---
|
|
102
|
-
|
|
102
|
+
|
|
103
103
|
<p align="center">
|
|
104
104
|
Built by <a href="https://mcp-tool-shop.github.io/">MCP Tool Shop</a>
|
|
105
105
|
</p>
|
package/README.ja.md
CHANGED
|
@@ -1,64 +1,64 @@
|
|
|
1
|
-
<p align="center">
|
|
2
|
-
<a href="README.md">English</a> | <a href="README.zh.md">中文</a> | <a href="README.es.md">Español</a> | <a href="README.fr.md">Français</a> | <a href="README.hi.md">हिन्दी</a> | <a href="README.it.md">Italiano</a> | <a href="README.pt-BR.md">Português (BR)</a>
|
|
3
|
-
</p>
|
|
4
|
-
|
|
1
|
+
<p align="center">
|
|
2
|
+
<a href="README.md">English</a> | <a href="README.zh.md">中文</a> | <a href="README.es.md">Español</a> | <a href="README.fr.md">Français</a> | <a href="README.hi.md">हिन्दी</a> | <a href="README.it.md">Italiano</a> | <a href="README.pt-BR.md">Português (BR)</a>
|
|
3
|
+
</p>
|
|
4
|
+
|
|
5
5
|
<p align="center">
|
|
6
6
|
<img src="https://raw.githubusercontent.com/mcp-tool-shop-org/brand/main/logos/shipcheck/readme.png" alt="Shipcheck" width="400">
|
|
7
7
|
</p>
|
|
8
|
-
|
|
8
|
+
|
|
9
9
|
<p align="center">
|
|
10
10
|
<a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue" alt="MIT License"></a>
|
|
11
11
|
<a href="https://mcp-tool-shop-org.github.io/shipcheck/"><img src="https://img.shields.io/badge/Landing_Page-live-blue" alt="Landing Page"></a>
|
|
12
12
|
</p>
|
|
13
|
-
|
|
13
|
+
|
|
14
14
|
<p align="center">
|
|
15
15
|
Product standards for MCP Tool Shop.<br>
|
|
16
16
|
Templates, contracts, and adoption guides that define what "done" means before anything ships.
|
|
17
17
|
</p>
|
|
18
|
-
|
|
18
|
+
|
|
19
19
|
---
|
|
20
|
-
|
|
21
|
-
## なぜ
|
|
22
|
-
|
|
23
|
-
以前は、「完了」とはコードが動作することを意味していました。しかし、それだけでは不十分です。製品とは、コードに加えて、安全性、エラー処理、ドキュメント、アイデンティティ、そして適切なリリース体制を意味します。Shipcheckは、その基準を定義します。
|
|
24
|
-
|
|
25
|
-
## 内容
|
|
26
|
-
|
|
27
|
-
| 標準 | 対象範囲 |
|
|
28
|
-
|----------|----------------|
|
|
29
|
-
| [Ship Gate](templates/SHIP_GATE.md) | 厳格なチェック項目27個 + 柔軟なチェック項目4個を含む、リリース前のチェックリスト |
|
|
30
|
-
| [Error Contract](contracts/error-contract.md) | コード登録機能付きの、2段階構造のエラー基準 |
|
|
31
|
-
| [Security Baseline](templates/SECURITY.md) | レポートメール、対応までの時間、リスク範囲 |
|
|
32
|
-
| [Handbook](templates/HANDBOOK.md) | 複雑なツール向けの運用マニュアル |
|
|
33
|
-
| [Scorecard](templates/SCORECARD.md) | 修正前後の評価 |
|
|
34
|
-
| [Adoption Guide](ADOPTION.md) | Shipcheckを、30分以内に任意のレポジトリに適用 |
|
|
35
|
-
|
|
36
|
-
## クイックスタート
|
|
37
|
-
|
|
38
|
-
1. [ADOPTION.md](ADOPTION.md) を読んでください。
|
|
39
|
-
2. `templates/SHIP_GATE.md` をレポジトリのルートディレクトリにコピーします。
|
|
40
|
-
3. 該当する項目にチェックを入れ、該当しない項目には `SKIP:` と記述します。
|
|
41
|
-
4. すべての厳格なチェック項目が完了したら、リリースします。
|
|
42
|
-
|
|
43
|
-
## 仕組み
|
|
44
|
-
|
|
45
|
-
**厳格なチェック項目** (A~D) は、リリースをブロックします。
|
|
46
|
-
|
|
47
|
-
- **A. セキュリティ基準** — SECURITY.md、脅威モデル、機密情報の非保持、テレメトリーの非使用、デフォルトの安全対策
|
|
48
|
-
- **B. エラー処理** — 構造化されたエラー形式 (コード/メッセージ/ヒント/再試行可能)、安全な出力、エラー発生時の適切な対応
|
|
49
|
-
- **C. 運用者向けドキュメント** — README、CHANGELOG、LICENSE、ツールのドキュメント
|
|
50
|
-
- **D. リリース体制** — スクリプトの検証、バージョンの一致、依存関係のスキャン、ロックファイルの確認
|
|
51
|
-
|
|
52
|
-
**柔軟なチェック項目** (E) は、リリースをブロックしませんが、「全体像」を定義します。
|
|
53
|
-
|
|
54
|
-
- **E. アイデンティティ** — ロゴ、翻訳、ランディングページ、レポジトリのメタデータ
|
|
55
|
-
|
|
56
|
-
チェック項目は、**何を**満たすべきかを定義するものであり、**どのように**実装するかを定義するものではありません。適用範囲を示すタグ (`[all]`, `[npm]`, `[mcp]`, `[cli]`, `[desktop]`, `[vsix]`, `[container]`) は、該当する項目がないレポジトリでの不必要なチェックを避けるために使用されます。
|
|
57
|
-
|
|
58
|
-
## エラー基準の概要
|
|
59
|
-
|
|
60
|
-
**Tier 1 — 形状 (必須):**
|
|
61
|
-
|
|
20
|
+
|
|
21
|
+
## なぜ
|
|
22
|
+
|
|
23
|
+
以前は、「完了」とはコードが動作することを意味していました。しかし、それだけでは不十分です。製品とは、コードに加えて、安全性、エラー処理、ドキュメント、アイデンティティ、そして適切なリリース体制を意味します。Shipcheckは、その基準を定義します。
|
|
24
|
+
|
|
25
|
+
## 内容
|
|
26
|
+
|
|
27
|
+
| 標準 | 対象範囲 |
|
|
28
|
+
|----------|----------------|
|
|
29
|
+
| [Ship Gate](templates/SHIP_GATE.md) | 厳格なチェック項目27個 + 柔軟なチェック項目4個を含む、リリース前のチェックリスト |
|
|
30
|
+
| [Error Contract](contracts/error-contract.md) | コード登録機能付きの、2段階構造のエラー基準 |
|
|
31
|
+
| [Security Baseline](templates/SECURITY.md) | レポートメール、対応までの時間、リスク範囲 |
|
|
32
|
+
| [Handbook](templates/HANDBOOK.md) | 複雑なツール向けの運用マニュアル |
|
|
33
|
+
| [Scorecard](templates/SCORECARD.md) | 修正前後の評価 |
|
|
34
|
+
| [Adoption Guide](ADOPTION.md) | Shipcheckを、30分以内に任意のレポジトリに適用 |
|
|
35
|
+
|
|
36
|
+
## クイックスタート
|
|
37
|
+
|
|
38
|
+
1. [ADOPTION.md](ADOPTION.md) を読んでください。
|
|
39
|
+
2. `templates/SHIP_GATE.md` をレポジトリのルートディレクトリにコピーします。
|
|
40
|
+
3. 該当する項目にチェックを入れ、該当しない項目には `SKIP:` と記述します。
|
|
41
|
+
4. すべての厳格なチェック項目が完了したら、リリースします。
|
|
42
|
+
|
|
43
|
+
## 仕組み
|
|
44
|
+
|
|
45
|
+
**厳格なチェック項目** (A~D) は、リリースをブロックします。
|
|
46
|
+
|
|
47
|
+
- **A. セキュリティ基準** — SECURITY.md、脅威モデル、機密情報の非保持、テレメトリーの非使用、デフォルトの安全対策
|
|
48
|
+
- **B. エラー処理** — 構造化されたエラー形式 (コード/メッセージ/ヒント/再試行可能)、安全な出力、エラー発生時の適切な対応
|
|
49
|
+
- **C. 運用者向けドキュメント** — README、CHANGELOG、LICENSE、ツールのドキュメント
|
|
50
|
+
- **D. リリース体制** — スクリプトの検証、バージョンの一致、依存関係のスキャン、ロックファイルの確認
|
|
51
|
+
|
|
52
|
+
**柔軟なチェック項目** (E) は、リリースをブロックしませんが、「全体像」を定義します。
|
|
53
|
+
|
|
54
|
+
- **E. アイデンティティ** — ロゴ、翻訳、ランディングページ、レポジトリのメタデータ
|
|
55
|
+
|
|
56
|
+
チェック項目は、**何を**満たすべきかを定義するものであり、**どのように**実装するかを定義するものではありません。適用範囲を示すタグ (`[all]`, `[npm]`, `[mcp]`, `[cli]`, `[desktop]`, `[vsix]`, `[container]`) は、該当する項目がないレポジトリでの不必要なチェックを避けるために使用されます。
|
|
57
|
+
|
|
58
|
+
## エラー基準の概要
|
|
59
|
+
|
|
60
|
+
**Tier 1 — 形状 (必須):**
|
|
61
|
+
|
|
62
62
|
```json
|
|
63
63
|
{
|
|
64
64
|
"code": "INPUT_TEXT_EMPTY",
|
|
@@ -67,39 +67,39 @@
|
|
|
67
67
|
"retryable": false
|
|
68
68
|
}
|
|
69
69
|
```
|
|
70
|
-
|
|
71
|
-
**Tier 2 — 基本タイプ + エラーコード (CLI/MCP/デスクトップ):**
|
|
72
|
-
|
|
73
|
-
| エラーコード | 意味 |
|
|
74
|
-
|-----------|---------|
|
|
75
|
-
| 0 | OK |
|
|
76
|
-
| 1 | ユーザーエラー (不正な入力、設定の欠如) |
|
|
77
|
-
| 2 | 実行時エラー (クラッシュ、バックエンドの障害) |
|
|
78
|
-
| 3 | 部分的な成功 (一部の項目が成功) |
|
|
79
|
-
|
|
80
|
-
エラーコードは、名前空間付きのプレフィックスを使用します: `IO_`, `CONFIG_`, `PERM_`, `DEP_`, `RUNTIME_`, `PARTIAL_`, `INPUT_`, `STATE_`. コードは、リリース後に安定します。
|
|
81
|
-
|
|
82
|
-
## 参考実装
|
|
83
|
-
|
|
84
|
-
[mcp-voice-soundboard](https://github.com/mcp-tool-shop-org/mcp-voice-soundboard) は、Ship Gateを最初に通過したレポジトリであり、修正後に **46/50** のスコアを獲得しました。
|
|
85
|
-
|
|
86
|
-
## 評価項目
|
|
87
|
-
|
|
88
|
-
| カテゴリ | スコア | 備考 |
|
|
89
|
-
|----------|-------|-------|
|
|
90
|
-
| A. セキュリティ | 10/10 | SECURITY.md、実行可能なコードなし、データ収集なし |
|
|
91
|
-
| B. エラー処理 | 該当なし | 標準レポジトリ — エラーに関するコードなし |
|
|
92
|
-
| C. 運用者向けドキュメント | 10/10 | README、CHANGELOG、ADOPTION、すべてのテンプレートがドキュメント化されています |
|
|
93
|
-
| D. リリース体制 | 8/10 | 検証/テストするコードなし、すべての標準がバージョン管理されています |
|
|
94
|
-
| E. アイデンティティ | 10/10 | ロゴ、翻訳、ランディングページ、メタデータ |
|
|
95
|
-
| **Total** | **38/40** | B は除外 (該当なし) |
|
|
96
|
-
|
|
97
|
-
## ライセンス
|
|
98
|
-
|
|
99
|
-
[MIT](LICENSE)
|
|
100
|
-
|
|
70
|
+
|
|
71
|
+
**Tier 2 — 基本タイプ + エラーコード (CLI/MCP/デスクトップ):**
|
|
72
|
+
|
|
73
|
+
| エラーコード | 意味 |
|
|
74
|
+
|-----------|---------|
|
|
75
|
+
| 0 | OK |
|
|
76
|
+
| 1 | ユーザーエラー (不正な入力、設定の欠如) |
|
|
77
|
+
| 2 | 実行時エラー (クラッシュ、バックエンドの障害) |
|
|
78
|
+
| 3 | 部分的な成功 (一部の項目が成功) |
|
|
79
|
+
|
|
80
|
+
エラーコードは、名前空間付きのプレフィックスを使用します: `IO_`, `CONFIG_`, `PERM_`, `DEP_`, `RUNTIME_`, `PARTIAL_`, `INPUT_`, `STATE_`. コードは、リリース後に安定します。
|
|
81
|
+
|
|
82
|
+
## 参考実装
|
|
83
|
+
|
|
84
|
+
[mcp-voice-soundboard](https://github.com/mcp-tool-shop-org/mcp-voice-soundboard) は、Ship Gateを最初に通過したレポジトリであり、修正後に **46/50** のスコアを獲得しました。
|
|
85
|
+
|
|
86
|
+
## 評価項目
|
|
87
|
+
|
|
88
|
+
| カテゴリ | スコア | 備考 |
|
|
89
|
+
|----------|-------|-------|
|
|
90
|
+
| A. セキュリティ | 10/10 | SECURITY.md、実行可能なコードなし、データ収集なし |
|
|
91
|
+
| B. エラー処理 | 該当なし | 標準レポジトリ — エラーに関するコードなし |
|
|
92
|
+
| C. 運用者向けドキュメント | 10/10 | README、CHANGELOG、ADOPTION、すべてのテンプレートがドキュメント化されています |
|
|
93
|
+
| D. リリース体制 | 8/10 | 検証/テストするコードなし、すべての標準がバージョン管理されています |
|
|
94
|
+
| E. アイデンティティ | 10/10 | ロゴ、翻訳、ランディングページ、メタデータ |
|
|
95
|
+
| **Total** | **38/40** | B は除外 (該当なし) |
|
|
96
|
+
|
|
97
|
+
## ライセンス
|
|
98
|
+
|
|
99
|
+
[MIT](LICENSE)
|
|
100
|
+
|
|
101
101
|
---
|
|
102
|
-
|
|
102
|
+
|
|
103
103
|
<p align="center">
|
|
104
104
|
Built by <a href="https://mcp-tool-shop.github.io/">MCP Tool Shop</a>
|
|
105
105
|
</p>
|
package/README.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
<p align="center">
|
|
2
|
-
<a href="README.ja.md">日本語</a> | <a href="README.zh.md">中文</a> | <a href="README.es.md">Español</a> | <a href="README.fr.md">Français</a> | <a href="README.hi.md">हिन्दी</a> | <a href="README.it.md">Italiano</a> | <a href="README.pt-BR.md">Português (BR)</a>
|
|
3
|
-
</p>
|
|
4
|
-
|
|
1
|
+
<p align="center">
|
|
2
|
+
<a href="README.ja.md">日本語</a> | <a href="README.zh.md">中文</a> | <a href="README.es.md">Español</a> | <a href="README.fr.md">Français</a> | <a href="README.hi.md">हिन्दी</a> | <a href="README.it.md">Italiano</a> | <a href="README.pt-BR.md">Português (BR)</a>
|
|
3
|
+
</p>
|
|
4
|
+
|
|
5
5
|
<p align="center">
|
|
6
6
|
<img src="https://raw.githubusercontent.com/mcp-tool-shop-org/brand/main/logos/shipcheck/readme.jpg" alt="Shipcheck" width="400">
|
|
7
7
|
</p>
|
|
@@ -79,6 +79,13 @@ The gate says **what** must be true, not **how** to implement it. Applicability
|
|
|
79
79
|
|
|
80
80
|
Error codes use namespaced prefixes: `IO_`, `CONFIG_`, `PERM_`, `DEP_`, `RUNTIME_`, `PARTIAL_`, `INPUT_`, `STATE_`. Codes are stable once released.
|
|
81
81
|
|
|
82
|
+
## Trust model
|
|
83
|
+
|
|
84
|
+
**Data touched:** reads `package.json`, `pyproject.toml`, and `SHIP_GATE.md` in the current working directory. Writes template files (`SHIP_GATE.md`, `SECURITY.md`, `CHANGELOG.md`, `SCORECARD.md`) to the current directory only.
|
|
85
|
+
**No network requests.** All operations are local file reads and writes.
|
|
86
|
+
**No secrets handling.** Does not read, store, or transmit credentials.
|
|
87
|
+
**No telemetry** collected or sent.
|
|
88
|
+
|
|
82
89
|
## Reference implementation
|
|
83
90
|
|
|
84
91
|
[mcp-voice-soundboard](https://github.com/mcp-tool-shop-org/mcp-voice-soundboard) was the first repo to pass Ship Gate — scoring **46/50** after remediation.
|
|
@@ -87,12 +94,12 @@ Error codes use namespaced prefixes: `IO_`, `CONFIG_`, `PERM_`, `DEP_`, `RUNTIME
|
|
|
87
94
|
|
|
88
95
|
| Category | Score | Notes |
|
|
89
96
|
|----------|-------|-------|
|
|
90
|
-
| A. Security |
|
|
91
|
-
| B. Error Handling |
|
|
92
|
-
| C. Operator Docs |
|
|
93
|
-
| D. Shipping Hygiene |
|
|
94
|
-
| E. Identity |
|
|
95
|
-
| **Total** | **
|
|
97
|
+
| A. Security | 6/8 | SECURITY.md, trust model, no secrets/telemetry. MCP items skipped (not an MCP server) |
|
|
98
|
+
| B. Error Handling | 3/7 | Structured error shape + exit codes + no raw stacks. MCP/desktop/vscode skipped |
|
|
99
|
+
| C. Operator Docs | 4/7 | README, CHANGELOG, LICENSE, --help. Logging/MCP/complex skipped |
|
|
100
|
+
| D. Shipping Hygiene | 6/9 | verify script, version=tag, npm audit in CI, engines.node, lockfile. Zero deps = no update mechanism |
|
|
101
|
+
| E. Identity | 4/4 | Logo, translations, landing page, metadata |
|
|
102
|
+
| **Total** | **23/31** | 14 items skipped with justification · `shipcheck audit` passes 100% |
|
|
96
103
|
|
|
97
104
|
## License
|
|
98
105
|
|
package/README.pt-BR.md
CHANGED
|
@@ -1,64 +1,64 @@
|
|
|
1
|
-
<p align="center">
|
|
2
|
-
<a href="README.ja.md">日本語</a> | <a href="README.zh.md">中文</a> | <a href="README.es.md">Español</a> | <a href="README.fr.md">Français</a> | <a href="README.hi.md">हिन्दी</a> | <a href="README.it.md">Italiano</a> | <a href="README.md">English</a>
|
|
3
|
-
</p>
|
|
4
|
-
|
|
1
|
+
<p align="center">
|
|
2
|
+
<a href="README.ja.md">日本語</a> | <a href="README.zh.md">中文</a> | <a href="README.es.md">Español</a> | <a href="README.fr.md">Français</a> | <a href="README.hi.md">हिन्दी</a> | <a href="README.it.md">Italiano</a> | <a href="README.md">English</a>
|
|
3
|
+
</p>
|
|
4
|
+
|
|
5
5
|
<p align="center">
|
|
6
6
|
<img src="https://raw.githubusercontent.com/mcp-tool-shop-org/brand/main/logos/shipcheck/readme.jpg" alt="Shipcheck" width="400">
|
|
7
7
|
</p>
|
|
8
|
-
|
|
8
|
+
|
|
9
9
|
<p align="center">
|
|
10
10
|
<a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue" alt="MIT License"></a>
|
|
11
11
|
<a href="https://mcp-tool-shop-org.github.io/shipcheck/"><img src="https://img.shields.io/badge/Landing_Page-live-blue" alt="Landing Page"></a>
|
|
12
12
|
</p>
|
|
13
|
-
|
|
13
|
+
|
|
14
14
|
<p align="center">
|
|
15
15
|
Product standards for MCP Tool Shop.<br>
|
|
16
16
|
Templates, contracts, and adoption guides that define what "done" means before anything ships.
|
|
17
17
|
</p>
|
|
18
|
-
|
|
18
|
+
|
|
19
19
|
---
|
|
20
|
-
|
|
21
|
-
## Por que
|
|
22
|
-
|
|
23
|
-
"Concluído" costumava significar que o código funcionava. Isso não é suficiente. Um produto é código + segurança + tratamento de erros + documentação + identidade + higiene no processo de lançamento. O Shipcheck define o padrão.
|
|
24
|
-
|
|
25
|
-
## O que está incluído aqui
|
|
26
|
-
|
|
27
|
-
| Padrão | O que isso cobre |
|
|
28
|
-
|----------|----------------|
|
|
29
|
-
| [Ship Gate](templates/SHIP_GATE.md) | Lista de verificação de pré-lançamento com 27 itens obrigatórios + 4 itens opcionais. |
|
|
30
|
-
| [Error Contract](contracts/error-contract.md) | Padrão estruturado de tratamento de erros com registro de código. |
|
|
31
|
-
| [Security Baseline](templates/SECURITY.md) | E-mail de relatório, tempo de resposta, escopo das ameaças. |
|
|
32
|
-
| [Handbook](templates/HANDBOOK.md) | Manual operacional para ferramentas complexas. |
|
|
33
|
-
| [Scorecard](templates/SCORECARD.md) | Pontuação antes e depois da correção. |
|
|
34
|
-
| [Adoption Guide](ADOPTION.md) | Aplique o Shipcheck a qualquer repositório em menos de 30 minutos. |
|
|
35
|
-
|
|
36
|
-
## Como começar
|
|
37
|
-
|
|
38
|
-
1. Leia [ADOPTION.md](ADOPTION.md)
|
|
39
|
-
2. Copie `templates/SHIP_GATE.md` para a raiz do seu repositório.
|
|
40
|
-
3. Marque os itens aplicáveis, e marque os itens não aplicáveis com `SKIP:`.
|
|
41
|
-
4. Lance quando todos os itens obrigatórios forem aprovados.
|
|
42
|
-
|
|
43
|
-
## Como funciona
|
|
44
|
-
|
|
45
|
-
**Itens obrigatórios** (A-D) bloqueiam o lançamento:
|
|
46
|
-
|
|
47
|
-
- **A. Segurança básica** — SECURITY.md, modelo de ameaças, sem segredos, sem telemetria, postura de segurança padrão.
|
|
48
|
-
- **B. Tratamento de erros** — estrutura de erro padronizada (código/mensagem/dica/tentável), saída segura, degradação graciosa.
|
|
49
|
-
- **C. Documentação para o usuário** — README, CHANGELOG, LICENÇA, documentação da ferramenta.
|
|
50
|
-
- **D. Higiene no processo de lançamento** — verificação de script, alinhamento de versão, análise de dependências, arquivo de bloqueio.
|
|
51
|
-
|
|
52
|
-
**Item opcional** (E) não bloqueia, mas define o "todo":
|
|
53
|
-
|
|
54
|
-
- **E. Identidade** — logotipo, traduções, página de destino, metadados do repositório.
|
|
55
|
-
|
|
56
|
-
O item indica **o que** deve ser verdadeiro, não **como** implementá-lo. As tags de aplicabilidade (`[all]`, `[npm]`, `[mcp]`, `[cli]`, `[desktop]`, `[vsix]`, `[container]`) evitam constrangimentos em repositórios onde os itens não se aplicam.
|
|
57
|
-
|
|
58
|
-
## Contrato de erro em resumo
|
|
59
|
-
|
|
60
|
-
**Nível 1 — Estrutura (obrigatório em todos os lugares):**
|
|
61
|
-
|
|
20
|
+
|
|
21
|
+
## Por que
|
|
22
|
+
|
|
23
|
+
"Concluído" costumava significar que o código funcionava. Isso não é suficiente. Um produto é código + segurança + tratamento de erros + documentação + identidade + higiene no processo de lançamento. O Shipcheck define o padrão.
|
|
24
|
+
|
|
25
|
+
## O que está incluído aqui
|
|
26
|
+
|
|
27
|
+
| Padrão | O que isso cobre |
|
|
28
|
+
|----------|----------------|
|
|
29
|
+
| [Ship Gate](templates/SHIP_GATE.md) | Lista de verificação de pré-lançamento com 27 itens obrigatórios + 4 itens opcionais. |
|
|
30
|
+
| [Error Contract](contracts/error-contract.md) | Padrão estruturado de tratamento de erros com registro de código. |
|
|
31
|
+
| [Security Baseline](templates/SECURITY.md) | E-mail de relatório, tempo de resposta, escopo das ameaças. |
|
|
32
|
+
| [Handbook](templates/HANDBOOK.md) | Manual operacional para ferramentas complexas. |
|
|
33
|
+
| [Scorecard](templates/SCORECARD.md) | Pontuação antes e depois da correção. |
|
|
34
|
+
| [Adoption Guide](ADOPTION.md) | Aplique o Shipcheck a qualquer repositório em menos de 30 minutos. |
|
|
35
|
+
|
|
36
|
+
## Como começar
|
|
37
|
+
|
|
38
|
+
1. Leia [ADOPTION.md](ADOPTION.md)
|
|
39
|
+
2. Copie `templates/SHIP_GATE.md` para a raiz do seu repositório.
|
|
40
|
+
3. Marque os itens aplicáveis, e marque os itens não aplicáveis com `SKIP:`.
|
|
41
|
+
4. Lance quando todos os itens obrigatórios forem aprovados.
|
|
42
|
+
|
|
43
|
+
## Como funciona
|
|
44
|
+
|
|
45
|
+
**Itens obrigatórios** (A-D) bloqueiam o lançamento:
|
|
46
|
+
|
|
47
|
+
- **A. Segurança básica** — SECURITY.md, modelo de ameaças, sem segredos, sem telemetria, postura de segurança padrão.
|
|
48
|
+
- **B. Tratamento de erros** — estrutura de erro padronizada (código/mensagem/dica/tentável), saída segura, degradação graciosa.
|
|
49
|
+
- **C. Documentação para o usuário** — README, CHANGELOG, LICENÇA, documentação da ferramenta.
|
|
50
|
+
- **D. Higiene no processo de lançamento** — verificação de script, alinhamento de versão, análise de dependências, arquivo de bloqueio.
|
|
51
|
+
|
|
52
|
+
**Item opcional** (E) não bloqueia, mas define o "todo":
|
|
53
|
+
|
|
54
|
+
- **E. Identidade** — logotipo, traduções, página de destino, metadados do repositório.
|
|
55
|
+
|
|
56
|
+
O item indica **o que** deve ser verdadeiro, não **como** implementá-lo. As tags de aplicabilidade (`[all]`, `[npm]`, `[mcp]`, `[cli]`, `[desktop]`, `[vsix]`, `[container]`) evitam constrangimentos em repositórios onde os itens não se aplicam.
|
|
57
|
+
|
|
58
|
+
## Contrato de erro em resumo
|
|
59
|
+
|
|
60
|
+
**Nível 1 — Estrutura (obrigatório em todos os lugares):**
|
|
61
|
+
|
|
62
62
|
```json
|
|
63
63
|
{
|
|
64
64
|
"code": "INPUT_TEXT_EMPTY",
|
|
@@ -67,39 +67,39 @@ O item indica **o que** deve ser verdadeiro, não **como** implementá-lo. As ta
|
|
|
67
67
|
"retryable": false
|
|
68
68
|
}
|
|
69
69
|
```
|
|
70
|
-
|
|
71
|
-
**Nível 2 — Tipo base + códigos de saída (CLI/MCP/desktop):**
|
|
72
|
-
|
|
73
|
-
| Código de saída | Significado |
|
|
74
|
-
|-----------|---------|
|
|
75
|
-
| 0 | OK |
|
|
76
|
-
| 1 | Erro do usuário (entrada inválida, configuração ausente) |
|
|
77
|
-
| 2 | Erro em tempo de execução (falha, falha no backend) |
|
|
78
|
-
| 3 | Sucesso parcial (alguns itens foram bem-sucedidos) |
|
|
79
|
-
|
|
80
|
-
Os códigos de erro usam prefixos com namespace: `IO_`, `CONFIG_`, `PERM_`, `DEP_`, `RUNTIME_`, `PARTIAL_`, `INPUT_`, `STATE_`. Os códigos são estáveis após o lançamento.
|
|
81
|
-
|
|
82
|
-
## Implementação de referência
|
|
83
|
-
|
|
84
|
-
[mcp-voice-soundboard](https://github.com/mcp-tool-shop-org/mcp-voice-soundboard) foi o primeiro repositório a passar no Ship Gate — obtendo uma pontuação de **46/50** após a correção.
|
|
85
|
-
|
|
86
|
-
## Tabela de pontuação
|
|
87
|
-
|
|
88
|
-
| Categoria | Pontuação | Observações |
|
|
89
|
-
|----------|-------|-------|
|
|
90
|
-
| A. Segurança | 10/10 | SECURITY.md, sem código executável, sem coleta de dados. |
|
|
91
|
-
| B. Tratamento de erros | N/A | Repositório de padrões — sem código para tratamento de erros. |
|
|
92
|
-
| C. Documentação para o usuário | 10/10 | README, CHANGELOG, ADOPTION, todos os modelos documentados. |
|
|
93
|
-
| D. Higiene no processo de lançamento | 8/10 | Sem código para verificar/testar, todas as versões dos padrões versionadas. |
|
|
94
|
-
| E. Identidade | 10/10 | Logotipo, traduções, página de destino, metadados. |
|
|
95
|
-
| **Total** | **38/40** | B excluído (não aplicável) |
|
|
96
|
-
|
|
97
|
-
## Licença
|
|
98
|
-
|
|
99
|
-
[MIT](LICENSE)
|
|
100
|
-
|
|
70
|
+
|
|
71
|
+
**Nível 2 — Tipo base + códigos de saída (CLI/MCP/desktop):**
|
|
72
|
+
|
|
73
|
+
| Código de saída | Significado |
|
|
74
|
+
|-----------|---------|
|
|
75
|
+
| 0 | OK |
|
|
76
|
+
| 1 | Erro do usuário (entrada inválida, configuração ausente) |
|
|
77
|
+
| 2 | Erro em tempo de execução (falha, falha no backend) |
|
|
78
|
+
| 3 | Sucesso parcial (alguns itens foram bem-sucedidos) |
|
|
79
|
+
|
|
80
|
+
Os códigos de erro usam prefixos com namespace: `IO_`, `CONFIG_`, `PERM_`, `DEP_`, `RUNTIME_`, `PARTIAL_`, `INPUT_`, `STATE_`. Os códigos são estáveis após o lançamento.
|
|
81
|
+
|
|
82
|
+
## Implementação de referência
|
|
83
|
+
|
|
84
|
+
[mcp-voice-soundboard](https://github.com/mcp-tool-shop-org/mcp-voice-soundboard) foi o primeiro repositório a passar no Ship Gate — obtendo uma pontuação de **46/50** após a correção.
|
|
85
|
+
|
|
86
|
+
## Tabela de pontuação
|
|
87
|
+
|
|
88
|
+
| Categoria | Pontuação | Observações |
|
|
89
|
+
|----------|-------|-------|
|
|
90
|
+
| A. Segurança | 10/10 | SECURITY.md, sem código executável, sem coleta de dados. |
|
|
91
|
+
| B. Tratamento de erros | N/A | Repositório de padrões — sem código para tratamento de erros. |
|
|
92
|
+
| C. Documentação para o usuário | 10/10 | README, CHANGELOG, ADOPTION, todos os modelos documentados. |
|
|
93
|
+
| D. Higiene no processo de lançamento | 8/10 | Sem código para verificar/testar, todas as versões dos padrões versionadas. |
|
|
94
|
+
| E. Identidade | 10/10 | Logotipo, traduções, página de destino, metadados. |
|
|
95
|
+
| **Total** | **38/40** | B excluído (não aplicável) |
|
|
96
|
+
|
|
97
|
+
## Licença
|
|
98
|
+
|
|
99
|
+
[MIT](LICENSE)
|
|
100
|
+
|
|
101
101
|
---
|
|
102
|
-
|
|
102
|
+
|
|
103
103
|
<p align="center">
|
|
104
104
|
Built by <a href="https://mcp-tool-shop.github.io/">MCP Tool Shop</a>
|
|
105
105
|
</p>
|