@horizon_works/banto 0.5.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 +109 -0
- package/env.js +83 -0
- package/gate_core.js +629 -0
- package/gtasks.js +233 -0
- package/license/client.js +138 -0
- package/package.json +45 -0
- package/payload/compliance/SKILL.md +113 -0
- package/payload/compliance/dict/00_/345/213/225/344/275/234/347/242/272/350/252/215.json +14 -0
- package/payload/compliance/dict/06_house_rules.json +16 -0
- package/payload/compliance/dict/_sample/04_common_keihyo.json +270 -0
- package/payload/compliance/dict/_sample/README.md +72 -0
- package/payload/compliance/lint.js +265 -0
- package/payload/disciplines//347/225/252/351/240/255/343/201/256/344/275/234/346/263/225.md +64 -0
- package/payload/disciplines//350/207/252/345/267/261/345/201/245/350/250/272.md +74 -0
- package/payload/disciplines//351/200/261/346/254/241/343/203/241/343/203/263/343/203/206.md +60 -0
- package/payload/migration/protocol.md +35 -0
- package/payload/skill-maker/SKILL_base_anthropic.md +357 -0
- package/payload/skill-maker/skill-maker-v1.0.md +305 -0
- package/payload/skills/_/343/201/202/343/201/250/343/201/247/350/266/263/343/201/233/343/202/213/343/202/202/343/201/256.md +47 -0
- package/payload/skills/image-gen/SKILL.md +147 -0
- package/payload/skills/image-gen/gen.js +225 -0
- package/payload/skills/remember/SETUP_Google/351/200/243/346/220/272.md +106 -0
- package/payload/skills/remember/SKILL.md +158 -0
- package/payload/skills/remember/handoff.js +149 -0
- package/payload/skills/remember/tasks.js +320 -0
- package/payload/skills/slide-deck/SKILL.md +160 -0
- package/payload/skills/transcribe/README.md +182 -0
- package/payload/skills/transcribe/dict.json +10 -0
- package/payload/skills/transcribe/enroll_speaker.py +76 -0
- package/payload/skills/transcribe/identify_speakers.py +153 -0
- package/payload/skills/transcribe/transcribe.py +126 -0
- package/privacy.js +234 -0
- package/server.js +1671 -0
- package/shelf.js +172 -0
- package/subconscious.js +150 -0
- package/supplements.json +192 -0
package/README.md
ADDED
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
# AI番頭のOS
|
|
2
|
+
|
|
3
|
+
株式会社ホライズンワークス
|
|
4
|
+
|
|
5
|
+
AIを「便利な道具」ではなく「**任された範囲を預かる番頭**」として使うための土台です。
|
|
6
|
+
MCPを1本入れるだけで、番頭の作法・ルール・記憶・検査がそろいます。
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## いちばん大事なこと
|
|
11
|
+
|
|
12
|
+
> **AIに中身を見せずに、AIに検査させる。**
|
|
13
|
+
|
|
14
|
+
顧問先のお名前が入った下書きを、AIに貼らずに検査できます。
|
|
15
|
+
ファイルを読むのは**あなたのパソコンの中のプログラム**で、AIが受け取るのは「何件あったか」という数字だけです。
|
|
16
|
+
|
|
17
|
+
★このプログラムは、**あなたのパソコンの中で動きます**。
|
|
18
|
+
検査するファイルも、書き留めた記録も、外へは出ません。
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## 使えるようにする
|
|
23
|
+
|
|
24
|
+
お使いのAIの設定(MCPの設定)に、次を足してください。
|
|
25
|
+
|
|
26
|
+
```json
|
|
27
|
+
{
|
|
28
|
+
"mcpServers": {
|
|
29
|
+
"banto": {
|
|
30
|
+
"command": "npx",
|
|
31
|
+
"args": ["-y", "@horizon_works/banto"]
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
Node.js が入っていれば、ほかに何も要りません。
|
|
38
|
+
足したあと、AIの窓を開き直してください。
|
|
39
|
+
|
|
40
|
+
### 鍵を入れる
|
|
41
|
+
|
|
42
|
+
お渡しした鍵を、環境変数に入れてください。
|
|
43
|
+
|
|
44
|
+
```
|
|
45
|
+
BANTOU_LICENSE_KEY = (お渡しした鍵)
|
|
46
|
+
BANTOU_LICENSE_URL = (お渡しした URL)
|
|
47
|
+
BANTOU_LICENSE_ANON = (お渡しした 公開キー)
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
★鍵が無くても、**検査と記録は使えます**。サプリの取得だけが止まります。
|
|
51
|
+
|
|
52
|
+
---
|
|
53
|
+
|
|
54
|
+
## 最初にやること
|
|
55
|
+
|
|
56
|
+
AIにこう言ってください。
|
|
57
|
+
|
|
58
|
+
```
|
|
59
|
+
番頭の道具を、このフォルダに入れて
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
スキル(画像・スライド・文字起こし)や、週に一度の手入れの手順が入ります。
|
|
63
|
+
何が入るかは「**入る前に一覧を見せて**」と言えば、先に確かめられます。
|
|
64
|
+
|
|
65
|
+
続けて、こう言えます。
|
|
66
|
+
|
|
67
|
+
```
|
|
68
|
+
番頭の棚を見せて
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
お仕事に合わせたサプリ(給与・就業規則・助成金・36協定など)の一覧がブラウザで開きます。
|
|
72
|
+
要るものだけ選んで入れてください。★要らなくなったら外せます(**消えません**)。
|
|
73
|
+
|
|
74
|
+
---
|
|
75
|
+
|
|
76
|
+
## できること
|
|
77
|
+
|
|
78
|
+
| 頼み方 | すること |
|
|
79
|
+
|---|---|
|
|
80
|
+
| 「このファイル、出して大丈夫か検査して」 | ★中身を見せずに検査。件数と判定だけ返ります |
|
|
81
|
+
| 「これ、記録しておいて」 | 1行だけ書き留めます |
|
|
82
|
+
| 「振り返って」 | ★**同じことを3回したら「決まりごとにする番です」**と出ます |
|
|
83
|
+
| 「片づけて」 | 散らかりを診ます。★**消しません。寄せるだけで、戻せます** |
|
|
84
|
+
| 「棚を見せて」 | サプリを選んで入れる/外す |
|
|
85
|
+
| 「新しくして」 | ★**あなたが書き換えたものには触りません** |
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
## 大事にしていること
|
|
90
|
+
|
|
91
|
+
- ★**消しません。** 外すときも、片づけるときも、移すだけです。あとで戻せます
|
|
92
|
+
- ★**書き換えたものには触りません。** 育てたものは、あなたのものです
|
|
93
|
+
- ★**記録はあなたの手元のテキストです。** この道具が使えなくなっても、メモ帳で読めます
|
|
94
|
+
- ★**「0件」は「安全」という意味ではありません。** この検査で出なかった、という意味です
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
## 気をつけていただきたいこと
|
|
99
|
+
|
|
100
|
+
この道具を通したことは、**安全の証明にはなりません**。
|
|
101
|
+
機械が見ているのは決められた形だけで、形が違えば見つかりません。
|
|
102
|
+
|
|
103
|
+
★**最後に判断するのは、いつでも人です。**
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
107
|
+
## お問い合わせ
|
|
108
|
+
|
|
109
|
+
株式会社ホライズンワークス
|
package/env.js
ADDED
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 下ごしらえ(Node / Python / Playwright / Google)
|
|
3
|
+
*
|
|
4
|
+
* ★2026-08-21 主「Playwright を Node と Python と同じタイミングで使えるようにしてほしい」
|
|
5
|
+
*
|
|
6
|
+
* ★なぜ Playwright が要るか
|
|
7
|
+
* 見た目を直すとき、**測るだけだと静かに嘘をつく**。画は嘘をつかない。
|
|
8
|
+
* (→ tooling-check「見た目を直しているときは、まずスクリーンショットを1枚撮って目で見る」)
|
|
9
|
+
*
|
|
10
|
+
* ★案内は**次の一手だけ**返す。手順が5つを超えると、人はそこで止まる。
|
|
11
|
+
*/
|
|
12
|
+
const { execFileSync } = require('child_process');
|
|
13
|
+
const fs = require('fs');
|
|
14
|
+
const path = require('path');
|
|
15
|
+
|
|
16
|
+
const run = (cmd, args) => {
|
|
17
|
+
try {
|
|
18
|
+
return execFileSync(cmd, args, { encoding: 'utf8', timeout: 20000, stdio: ['ignore', 'pipe', 'ignore'] }).trim();
|
|
19
|
+
} catch (_) { return null; }
|
|
20
|
+
};
|
|
21
|
+
const win = process.platform === 'win32';
|
|
22
|
+
|
|
23
|
+
function look() {
|
|
24
|
+
const node = process.version;
|
|
25
|
+
const py = run(win ? 'py' : 'python3', ['--version']) || run('python', ['--version']);
|
|
26
|
+
let pw = null;
|
|
27
|
+
try { require.resolve('playwright'); pw = 'あり(Node側)'; } catch (_) {}
|
|
28
|
+
if (!pw) { const v = run('npx', ['--no-install', 'playwright', '--version']); if (v) pw = v; }
|
|
29
|
+
let pwpy = null;
|
|
30
|
+
if (py) { const v = run(win ? 'py' : 'python3', ['-m', 'playwright', '--version']); if (v) pwpy = v; }
|
|
31
|
+
return { node, python: py, playwright: pw, playwright_python: pwpy };
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* ★足りないものを、順に1つだけ案内する。
|
|
36
|
+
* ぜんぶ並べると、いちばん重いところで止まって全部が進まなくなる。
|
|
37
|
+
*/
|
|
38
|
+
function guide(want) {
|
|
39
|
+
const s = look();
|
|
40
|
+
const 欲しいもの = (want && want.length) ? want : ['node', 'python', 'playwright'];
|
|
41
|
+
const 手順 = [];
|
|
42
|
+
|
|
43
|
+
const major = Number(String(s.node).replace('v', '').split('.')[0]);
|
|
44
|
+
if (!(major >= 18)) {
|
|
45
|
+
手順.push({
|
|
46
|
+
何が: 'Node.js が古いか、入っていません(いまは ' + s.node + ')',
|
|
47
|
+
どうする: 'https://nodejs.org/ja から LTS 版を入れてください',
|
|
48
|
+
重さ: '5分ほど',
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
if (欲しいもの.includes('python') && !s.python) {
|
|
53
|
+
手順.push({
|
|
54
|
+
何が: 'Python が入っていません',
|
|
55
|
+
どうする: win
|
|
56
|
+
? 'https://www.python.org/downloads/ から入れてください(★「Add python.exe to PATH」に必ずチェック)'
|
|
57
|
+
: 'python3 を入れてください',
|
|
58
|
+
重さ: '5分ほど',
|
|
59
|
+
なぜ: '文字起こしなど、一部のサプリが使います',
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
if (欲しいもの.includes('playwright') && !s.playwright) {
|
|
64
|
+
手順.push({
|
|
65
|
+
何が: 'Playwright が入っていません',
|
|
66
|
+
どうする: '仕事のフォルダで:npm i -D playwright そのあと:npx playwright install chromium',
|
|
67
|
+
重さ: '★ブラウザを落とすので5〜10分・数百MB',
|
|
68
|
+
なぜ: '★作った画面を**目で見て**確かめるためです。数字だけ見ていると、直したつもりで直っていないことがあります',
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
return {
|
|
73
|
+
いまの状態: s,
|
|
74
|
+
足りないもの: 手順.length,
|
|
75
|
+
次にすること: 手順.length ? 手順[0] : null,
|
|
76
|
+
このあと: 手順.length > 1 ? 手順.slice(1).map((h) => h.何が) : undefined,
|
|
77
|
+
note: 手順.length
|
|
78
|
+
? '★1つずつで構いません。**全部そろっていなくても、番頭の他の道具は使えます。**'
|
|
79
|
+
: '✅ そろっています。',
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
module.exports = { look, guide };
|