shiden 0.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/.github/prompts/assessment.md +303 -0
- package/.github/prompts/feedback.md +318 -0
- package/.github/prompts/guidance.md +361 -0
- package/.github/prompts/individual.md +300 -0
- package/.github/prompts/lesson-plan.md +233 -0
- package/.github/prompts/materials.md +349 -0
- package/.github/prompts/meta-prompt.md +201 -0
- package/.github/skills/context-manager.md +324 -0
- package/.github/skills/orchestrator.md +184 -0
- package/.github/skills/theory-lookup.md +283 -0
- package/AGENTS.md +142 -0
- package/LICENSE +21 -0
- package/README.md +122 -0
- package/bin/shiden.js +3 -0
- package/dist/cli/index.js +175 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -0
- package/dist/types/cli/index.d.ts +6 -0
- package/dist/types/cli/index.d.ts.map +1 -0
- package/dist/types/index.d.ts +6 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +59 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/types/index.d.ts +117 -0
- package/dist/types/types/index.d.ts.map +1 -0
- package/package.json +66 -0
- package/templates/.github/prompts/assessment.md +303 -0
- package/templates/.github/prompts/feedback.md +318 -0
- package/templates/.github/prompts/guidance.md +361 -0
- package/templates/.github/prompts/individual.md +300 -0
- package/templates/.github/prompts/lesson-plan.md +233 -0
- package/templates/.github/prompts/materials.md +349 -0
- package/templates/.github/prompts/meta-prompt.md +201 -0
- package/templates/.github/skills/context-manager.md +324 -0
- package/templates/.github/skills/orchestrator.md +184 -0
- package/templates/.github/skills/theory-lookup.md +283 -0
- package/templates/AGENTS.md +142 -0
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SHIDEN CLI
|
|
3
|
+
* @module cli
|
|
4
|
+
*/
|
|
5
|
+
import { parseArgs } from 'node:util';
|
|
6
|
+
import * as fs from 'node:fs';
|
|
7
|
+
import * as path from 'node:path';
|
|
8
|
+
import { fileURLToPath } from 'node:url';
|
|
9
|
+
// ESM でのディレクトリパス取得
|
|
10
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
11
|
+
const __dirname = path.dirname(__filename);
|
|
12
|
+
// パッケージバージョンを取得
|
|
13
|
+
function getVersion() {
|
|
14
|
+
const packageJsonPath = path.resolve(__dirname, '../../package.json');
|
|
15
|
+
try {
|
|
16
|
+
const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, 'utf-8'));
|
|
17
|
+
return packageJson.version || '1.0.0';
|
|
18
|
+
}
|
|
19
|
+
catch {
|
|
20
|
+
return '1.0.0';
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
// ヘルプメッセージ
|
|
24
|
+
const HELP_MESSAGE = `
|
|
25
|
+
🎓 SHIDEN - 教育者向けGitHub Copilot Agent Skills
|
|
26
|
+
|
|
27
|
+
Usage: npx shiden <command> [options]
|
|
28
|
+
|
|
29
|
+
Commands:
|
|
30
|
+
init [path] プロジェクトにSHIDEN Agent Skillsを初期化
|
|
31
|
+
-v, --version バージョンを表示
|
|
32
|
+
-h, --help このヘルプメッセージを表示
|
|
33
|
+
|
|
34
|
+
Examples:
|
|
35
|
+
npx shiden init 現在のディレクトリに初期化
|
|
36
|
+
npx shiden init ./myproject 指定ディレクトリに初期化
|
|
37
|
+
|
|
38
|
+
詳細: https://github.com/nahisaho/SHIDEN
|
|
39
|
+
`;
|
|
40
|
+
// 成功メッセージ
|
|
41
|
+
function getSuccessMessage(targetDir) {
|
|
42
|
+
return `
|
|
43
|
+
✅ SHIDEN Agent Skills を初期化しました!
|
|
44
|
+
|
|
45
|
+
📁 作成されたファイル:
|
|
46
|
+
${targetDir}/AGENTS.md - Agent Skills エントリーポイント
|
|
47
|
+
${targetDir}/.github/prompts/ - 教育スキルプロンプト
|
|
48
|
+
${targetDir}/.github/skills/ - 統合スキル
|
|
49
|
+
|
|
50
|
+
🚀 次のステップ:
|
|
51
|
+
1. VS Code で ${targetDir} を開く
|
|
52
|
+
2. GitHub Copilot Chat を起動
|
|
53
|
+
3. @workspace に質問する(例: 「中学2年の数学の授業計画を作成して」)
|
|
54
|
+
|
|
55
|
+
💡 TENJIN GraphRAG 連携(推奨):
|
|
56
|
+
TENJIN MCP Serverをセットアップすると、175+の教育理論を活用できます。
|
|
57
|
+
https://github.com/nahisaho/TENJIN
|
|
58
|
+
|
|
59
|
+
📖 ドキュメント: https://github.com/nahisaho/SHIDEN
|
|
60
|
+
`;
|
|
61
|
+
}
|
|
62
|
+
// テンプレートディレクトリのパス
|
|
63
|
+
function getTemplatesDir() {
|
|
64
|
+
return path.resolve(__dirname, '../../templates');
|
|
65
|
+
}
|
|
66
|
+
// ディレクトリを再帰的にコピー
|
|
67
|
+
function copyDirRecursive(src, dest) {
|
|
68
|
+
// ディレクトリが存在しない場合は作成
|
|
69
|
+
if (!fs.existsSync(dest)) {
|
|
70
|
+
fs.mkdirSync(dest, { recursive: true });
|
|
71
|
+
}
|
|
72
|
+
const entries = fs.readdirSync(src, { withFileTypes: true });
|
|
73
|
+
for (const entry of entries) {
|
|
74
|
+
const srcPath = path.join(src, entry.name);
|
|
75
|
+
const destPath = path.join(dest, entry.name);
|
|
76
|
+
if (entry.isDirectory()) {
|
|
77
|
+
copyDirRecursive(srcPath, destPath);
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
fs.copyFileSync(srcPath, destPath);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
// 単一ファイルをコピー
|
|
85
|
+
function copyFile(src, dest) {
|
|
86
|
+
const destDir = path.dirname(dest);
|
|
87
|
+
if (!fs.existsSync(destDir)) {
|
|
88
|
+
fs.mkdirSync(destDir, { recursive: true });
|
|
89
|
+
}
|
|
90
|
+
fs.copyFileSync(src, dest);
|
|
91
|
+
}
|
|
92
|
+
// init コマンド
|
|
93
|
+
function initCommand(targetPath = '.') {
|
|
94
|
+
const targetDir = path.resolve(process.cwd(), targetPath);
|
|
95
|
+
const templatesDir = getTemplatesDir();
|
|
96
|
+
console.log(`\n🎓 SHIDEN Agent Skills を ${targetDir} に初期化します...\n`);
|
|
97
|
+
// テンプレートディレクトリの存在確認
|
|
98
|
+
if (!fs.existsSync(templatesDir)) {
|
|
99
|
+
console.error(`❌ テンプレートディレクトリが見つかりません: ${templatesDir}`);
|
|
100
|
+
console.error(` パッケージが正しくインストールされているか確認してください。`);
|
|
101
|
+
process.exit(1);
|
|
102
|
+
}
|
|
103
|
+
try {
|
|
104
|
+
// AGENTS.md をコピー
|
|
105
|
+
const agentsSrc = path.join(templatesDir, 'AGENTS.md');
|
|
106
|
+
const agentsDest = path.join(targetDir, 'AGENTS.md');
|
|
107
|
+
if (fs.existsSync(agentsSrc)) {
|
|
108
|
+
copyFile(agentsSrc, agentsDest);
|
|
109
|
+
console.log(` ✓ AGENTS.md`);
|
|
110
|
+
}
|
|
111
|
+
// .github/prompts/ をコピー
|
|
112
|
+
const promptsSrc = path.join(templatesDir, '.github', 'prompts');
|
|
113
|
+
const promptsDest = path.join(targetDir, '.github', 'prompts');
|
|
114
|
+
if (fs.existsSync(promptsSrc)) {
|
|
115
|
+
copyDirRecursive(promptsSrc, promptsDest);
|
|
116
|
+
console.log(` ✓ .github/prompts/`);
|
|
117
|
+
}
|
|
118
|
+
// .github/skills/ をコピー
|
|
119
|
+
const skillsSrc = path.join(templatesDir, '.github', 'skills');
|
|
120
|
+
const skillsDest = path.join(targetDir, '.github', 'skills');
|
|
121
|
+
if (fs.existsSync(skillsSrc)) {
|
|
122
|
+
copyDirRecursive(skillsSrc, skillsDest);
|
|
123
|
+
console.log(` ✓ .github/skills/`);
|
|
124
|
+
}
|
|
125
|
+
console.log(getSuccessMessage(targetDir));
|
|
126
|
+
}
|
|
127
|
+
catch (error) {
|
|
128
|
+
console.error(`\n❌ 初期化中にエラーが発生しました:`, error);
|
|
129
|
+
process.exit(1);
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
// メイン処理
|
|
133
|
+
function main() {
|
|
134
|
+
try {
|
|
135
|
+
const { values, positionals } = parseArgs({
|
|
136
|
+
allowPositionals: true,
|
|
137
|
+
options: {
|
|
138
|
+
version: {
|
|
139
|
+
type: 'boolean',
|
|
140
|
+
short: 'v',
|
|
141
|
+
},
|
|
142
|
+
help: {
|
|
143
|
+
type: 'boolean',
|
|
144
|
+
short: 'h',
|
|
145
|
+
},
|
|
146
|
+
},
|
|
147
|
+
});
|
|
148
|
+
// バージョン表示
|
|
149
|
+
if (values.version) {
|
|
150
|
+
console.log(`shiden v${getVersion()}`);
|
|
151
|
+
return;
|
|
152
|
+
}
|
|
153
|
+
// ヘルプ表示
|
|
154
|
+
if (values.help || positionals.length === 0) {
|
|
155
|
+
console.log(HELP_MESSAGE);
|
|
156
|
+
return;
|
|
157
|
+
}
|
|
158
|
+
const command = positionals[0];
|
|
159
|
+
switch (command) {
|
|
160
|
+
case 'init':
|
|
161
|
+
initCommand(positionals[1]);
|
|
162
|
+
break;
|
|
163
|
+
default:
|
|
164
|
+
console.error(`\n❌ 不明なコマンド: ${command}`);
|
|
165
|
+
console.log(HELP_MESSAGE);
|
|
166
|
+
process.exit(1);
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
catch (error) {
|
|
170
|
+
console.error('エラーが発生しました:', error);
|
|
171
|
+
process.exit(1);
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
main();
|
|
175
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/index.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SHIDEN - 教育者向けGitHub Copilot Agent Skills
|
|
3
|
+
* 型定義
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* スキルルーティングマップ
|
|
7
|
+
*/
|
|
8
|
+
export const SKILL_ROUTING = {
|
|
9
|
+
'授業計画': 'lesson-plan',
|
|
10
|
+
'指導案': 'lesson-plan',
|
|
11
|
+
'lesson plan': 'lesson-plan',
|
|
12
|
+
'教材': 'materials',
|
|
13
|
+
'ワークシート': 'materials',
|
|
14
|
+
'スライド': 'materials',
|
|
15
|
+
'worksheet': 'materials',
|
|
16
|
+
'評価': 'assessment',
|
|
17
|
+
'ルーブリック': 'assessment',
|
|
18
|
+
'テスト': 'assessment',
|
|
19
|
+
'rubric': 'assessment',
|
|
20
|
+
'個別指導': 'individual',
|
|
21
|
+
'配慮': 'individual',
|
|
22
|
+
'individual': 'individual',
|
|
23
|
+
'フィードバック': 'feedback',
|
|
24
|
+
'振り返り': 'feedback',
|
|
25
|
+
'feedback': 'feedback',
|
|
26
|
+
'生活指導': 'guidance',
|
|
27
|
+
'行動': 'guidance',
|
|
28
|
+
'guidance': 'guidance',
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* Bloom's Taxonomy レベルマップ
|
|
32
|
+
*/
|
|
33
|
+
export const BLOOM_LEVELS = {
|
|
34
|
+
remember: {
|
|
35
|
+
name: '記憶',
|
|
36
|
+
verbs: ['定義する', '列挙する', '識別する', '再現する'],
|
|
37
|
+
},
|
|
38
|
+
understand: {
|
|
39
|
+
name: '理解',
|
|
40
|
+
verbs: ['説明する', '要約する', '言い換える', '分類する'],
|
|
41
|
+
},
|
|
42
|
+
apply: {
|
|
43
|
+
name: '応用',
|
|
44
|
+
verbs: ['適用する', '実行する', '使用する', '実演する'],
|
|
45
|
+
},
|
|
46
|
+
analyze: {
|
|
47
|
+
name: '分析',
|
|
48
|
+
verbs: ['比較する', '対照する', '区別する', '組織する'],
|
|
49
|
+
},
|
|
50
|
+
evaluate: {
|
|
51
|
+
name: '評価',
|
|
52
|
+
verbs: ['批評する', '判断する', '正当化する', '評価する'],
|
|
53
|
+
},
|
|
54
|
+
create: {
|
|
55
|
+
name: '創造',
|
|
56
|
+
verbs: ['設計する', '構築する', '開発する', '創作する'],
|
|
57
|
+
},
|
|
58
|
+
};
|
|
59
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA8HH;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAA8B;IACtD,MAAM,EAAE,aAAa;IACrB,KAAK,EAAE,aAAa;IACpB,aAAa,EAAE,aAAa;IAC5B,IAAI,EAAE,WAAW;IACjB,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,WAAW;IACnB,WAAW,EAAE,WAAW;IACxB,IAAI,EAAE,YAAY;IAClB,QAAQ,EAAE,YAAY;IACtB,KAAK,EAAE,YAAY;IACnB,QAAQ,EAAE,YAAY;IACtB,MAAM,EAAE,YAAY;IACpB,IAAI,EAAE,YAAY;IAClB,YAAY,EAAE,YAAY;IAC1B,SAAS,EAAE,UAAU;IACrB,MAAM,EAAE,UAAU;IAClB,UAAU,EAAE,UAAU;IACtB,MAAM,EAAE,UAAU;IAClB,IAAI,EAAE,UAAU;IAChB,UAAU,EAAE,UAAU;CACvB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAA0D;IACjF,QAAQ,EAAE;QACR,IAAI,EAAE,IAAI;QACV,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;KACxC;IACD,UAAU,EAAE;QACV,IAAI,EAAE,IAAI;QACV,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC;KACzC;IACD,KAAK,EAAE;QACL,IAAI,EAAE,IAAI;QACV,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;KACxC;IACD,OAAO,EAAE;QACP,IAAI,EAAE,IAAI;QACV,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;KACxC;IACD,QAAQ,EAAE;QACR,IAAI,EAAE,IAAI;QACV,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC;KACzC;IACD,MAAM,EAAE;QACN,IAAI,EAAE,IAAI;QACV,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;KACxC;CACF,CAAC"}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SHIDEN - 教育者向けGitHub Copilot Agent Skills
|
|
3
|
+
* 型定義
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* スキルタイプ
|
|
7
|
+
*/
|
|
8
|
+
export type SkillType = 'lesson-plan' | 'materials' | 'assessment' | 'individual' | 'feedback' | 'guidance';
|
|
9
|
+
/**
|
|
10
|
+
* 教材フォーマット
|
|
11
|
+
*/
|
|
12
|
+
export type MaterialFormat = 'worksheet' | 'slide' | 'quiz' | 'handout';
|
|
13
|
+
/**
|
|
14
|
+
* 評価タイプ
|
|
15
|
+
*/
|
|
16
|
+
export type AssessmentType = 'rubric' | 'test' | 'formative';
|
|
17
|
+
/**
|
|
18
|
+
* 指導タイプ
|
|
19
|
+
*/
|
|
20
|
+
export type GuidanceType = 'preventive' | 'responsive' | 'crisis';
|
|
21
|
+
/**
|
|
22
|
+
* Bloom's Taxonomy 認知レベル
|
|
23
|
+
*/
|
|
24
|
+
export type BloomLevel = 'remember' | 'understand' | 'apply' | 'analyze' | 'evaluate' | 'create';
|
|
25
|
+
/**
|
|
26
|
+
* メタプロンプトコンテキスト
|
|
27
|
+
*/
|
|
28
|
+
export interface MetaPromptContext {
|
|
29
|
+
/** 学年(例: "中学2年", "小学4年", "高校1年") */
|
|
30
|
+
grade?: string;
|
|
31
|
+
/** 教科(例: "数学", "英語", "理科") */
|
|
32
|
+
subject?: string;
|
|
33
|
+
/** 単元・トピック */
|
|
34
|
+
topic?: string;
|
|
35
|
+
/** 学習目標 */
|
|
36
|
+
learningObjective?: string;
|
|
37
|
+
/** 授業時間(分) */
|
|
38
|
+
duration?: number;
|
|
39
|
+
/** 特別な配慮事項 */
|
|
40
|
+
specialConsiderations?: string[];
|
|
41
|
+
/** 学習者レベル */
|
|
42
|
+
learnerLevel?: 'beginner' | 'intermediate' | 'advanced' | 'mixed';
|
|
43
|
+
/** 評価基準 */
|
|
44
|
+
assessmentCriteria?: string;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* 学習者プロファイル
|
|
48
|
+
*/
|
|
49
|
+
export interface LearnerProfile {
|
|
50
|
+
/** 学習スタイル */
|
|
51
|
+
learningStyle?: 'visual' | 'auditory' | 'kinesthetic' | 'mixed';
|
|
52
|
+
/** 現在の習熟度(1-5) */
|
|
53
|
+
proficiencyLevel?: 1 | 2 | 3 | 4 | 5;
|
|
54
|
+
/** 特別な配慮事項 */
|
|
55
|
+
specialNeeds?: string[];
|
|
56
|
+
/** 強み */
|
|
57
|
+
strengths?: string[];
|
|
58
|
+
/** 改善点 */
|
|
59
|
+
areasForImprovement?: string[];
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* TENJIN理論参照
|
|
63
|
+
*/
|
|
64
|
+
export interface TENJINTheory {
|
|
65
|
+
/** 理論ID */
|
|
66
|
+
id: string;
|
|
67
|
+
/** 理論名 */
|
|
68
|
+
name: string;
|
|
69
|
+
/** 理論家名 */
|
|
70
|
+
theorist?: string;
|
|
71
|
+
/** 概要 */
|
|
72
|
+
summary?: string;
|
|
73
|
+
/** カテゴリ */
|
|
74
|
+
category?: string;
|
|
75
|
+
/** 関連理論ID */
|
|
76
|
+
relatedTheories?: string[];
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* 初期化オプション
|
|
80
|
+
*/
|
|
81
|
+
export interface InitOptions {
|
|
82
|
+
/** 上書き確認をスキップ */
|
|
83
|
+
force?: boolean;
|
|
84
|
+
/** プレビューのみ(実際のコピーは行わない) */
|
|
85
|
+
dryRun?: boolean;
|
|
86
|
+
/** 出力先ディレクトリ */
|
|
87
|
+
targetDir?: string;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* 初期化結果
|
|
91
|
+
*/
|
|
92
|
+
export interface InitResult {
|
|
93
|
+
/** 成功したかどうか */
|
|
94
|
+
success: boolean;
|
|
95
|
+
/** コピーされたファイル */
|
|
96
|
+
copiedFiles: string[];
|
|
97
|
+
/** スキップされたファイル */
|
|
98
|
+
skippedFiles: string[];
|
|
99
|
+
/** エラーメッセージ */
|
|
100
|
+
errors: string[];
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* CLIコマンド
|
|
104
|
+
*/
|
|
105
|
+
export type CLICommand = 'init' | 'help' | 'version';
|
|
106
|
+
/**
|
|
107
|
+
* スキルルーティングマップ
|
|
108
|
+
*/
|
|
109
|
+
export declare const SKILL_ROUTING: Record<string, SkillType>;
|
|
110
|
+
/**
|
|
111
|
+
* Bloom's Taxonomy レベルマップ
|
|
112
|
+
*/
|
|
113
|
+
export declare const BLOOM_LEVELS: Record<BloomLevel, {
|
|
114
|
+
name: string;
|
|
115
|
+
verbs: string[];
|
|
116
|
+
}>;
|
|
117
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "shiden",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "教育者向けGitHub Copilot Agent Skills - TENJIN GraphRAG連携で教育理論に基づくコンテンツ生成を支援",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"github-copilot",
|
|
7
|
+
"agent-skills",
|
|
8
|
+
"education",
|
|
9
|
+
"teacher",
|
|
10
|
+
"lesson-plan",
|
|
11
|
+
"instructional-design",
|
|
12
|
+
"tenjin",
|
|
13
|
+
"graphrag",
|
|
14
|
+
"ai-assistant"
|
|
15
|
+
],
|
|
16
|
+
"homepage": "https://github.com/nahisaho/shiden#readme",
|
|
17
|
+
"bugs": {
|
|
18
|
+
"url": "https://github.com/nahisaho/shiden/issues"
|
|
19
|
+
},
|
|
20
|
+
"repository": {
|
|
21
|
+
"type": "git",
|
|
22
|
+
"url": "git+https://github.com/nahisaho/shiden.git"
|
|
23
|
+
},
|
|
24
|
+
"license": "MIT",
|
|
25
|
+
"author": "nahisaho",
|
|
26
|
+
"type": "module",
|
|
27
|
+
"exports": {
|
|
28
|
+
".": {
|
|
29
|
+
"types": "./dist/types/index.d.ts",
|
|
30
|
+
"import": "./dist/index.js"
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
"main": "./dist/index.js",
|
|
34
|
+
"types": "./dist/types/index.d.ts",
|
|
35
|
+
"bin": {
|
|
36
|
+
"shiden": "./bin/shiden.js"
|
|
37
|
+
},
|
|
38
|
+
"files": [
|
|
39
|
+
"dist/",
|
|
40
|
+
"bin/",
|
|
41
|
+
"templates/",
|
|
42
|
+
"AGENTS.md",
|
|
43
|
+
".github/",
|
|
44
|
+
"README.md",
|
|
45
|
+
"LICENSE"
|
|
46
|
+
],
|
|
47
|
+
"scripts": {
|
|
48
|
+
"build": "tsc",
|
|
49
|
+
"clean": "rm -rf dist",
|
|
50
|
+
"lint": "eslint src --ext .ts",
|
|
51
|
+
"lint:fix": "eslint src --ext .ts --fix",
|
|
52
|
+
"prepublishOnly": "npm run build",
|
|
53
|
+
"test": "vitest run",
|
|
54
|
+
"test:watch": "vitest",
|
|
55
|
+
"test:coverage": "vitest run --coverage",
|
|
56
|
+
"typecheck": "tsc --noEmit"
|
|
57
|
+
},
|
|
58
|
+
"devDependencies": {
|
|
59
|
+
"@types/node": "^20.19.30",
|
|
60
|
+
"typescript": "^5.3.0",
|
|
61
|
+
"vitest": "^1.6.1"
|
|
62
|
+
},
|
|
63
|
+
"engines": {
|
|
64
|
+
"node": ">=20.0.0"
|
|
65
|
+
}
|
|
66
|
+
}
|