@nahisaho/shikigami 1.1.1 → 1.2.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/AGENTS.md +41 -5
- package/package.json +4 -3
- package/scripts/cli.js +148 -0
- package/scripts/postinstall.js +1 -1
package/AGENTS.md
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
| 項目 | 詳細 |
|
|
10
10
|
|------|------|
|
|
11
|
-
| **バージョン** | 1.
|
|
11
|
+
| **バージョン** | 1.2.0 |
|
|
12
12
|
| **言語** | TypeScript |
|
|
13
13
|
| **ランタイム** | Node.js >= 20.0.0 |
|
|
14
14
|
| **Agent Skills** | 4スキル |
|
|
@@ -39,8 +39,12 @@ shikigami/
|
|
|
39
39
|
│ │ ├── config/ # 設定モジュール
|
|
40
40
|
│ │ └── tools/ # ツール実装
|
|
41
41
|
│ └── shikigami.config.example.yaml
|
|
42
|
-
|
|
43
|
-
|
|
42
|
+
├── .vscode/
|
|
43
|
+
│ └── mcp.json # MCP設定
|
|
44
|
+
└── outputs/ # リサーチ出力ディレクトリ
|
|
45
|
+
└── project-XXX[-name]/ # プロジェクト別フォルダ(XXXは連番)
|
|
46
|
+
├── research/ # Web検索で得られた情報
|
|
47
|
+
└── reports/ # 最終的なレポート
|
|
44
48
|
```
|
|
45
49
|
|
|
46
50
|
### Agent Skills(4スキル)
|
|
@@ -250,7 +254,39 @@ embedding:
|
|
|
250
254
|
|
|
251
255
|
---
|
|
252
256
|
|
|
253
|
-
## 🛠️
|
|
257
|
+
## 🛠️ CLIコマンド
|
|
258
|
+
|
|
259
|
+
```bash
|
|
260
|
+
# バージョン確認
|
|
261
|
+
npx shikigami -v
|
|
262
|
+
npx shikigami --version
|
|
263
|
+
|
|
264
|
+
# ヘルプ表示
|
|
265
|
+
npx shikigami -h
|
|
266
|
+
npx shikigami --help
|
|
267
|
+
|
|
268
|
+
# ファイル初期化(postinstall実行後は不要)
|
|
269
|
+
npx shikigami init
|
|
270
|
+
|
|
271
|
+
# 新規リサーチプロジェクト作成
|
|
272
|
+
npx shikigami new # 自動採番 (project-001, project-002, ...)
|
|
273
|
+
npx shikigami new my-research # 名前付き (project-001-my-research)
|
|
274
|
+
```
|
|
275
|
+
|
|
276
|
+
### プロジェクト出力構造
|
|
277
|
+
|
|
278
|
+
```
|
|
279
|
+
outputs/
|
|
280
|
+
└── project-XXX[-name]/ # XXXは連番(001, 002, ...)
|
|
281
|
+
├── research/ # Web検索で得られた情報
|
|
282
|
+
│ ├── sources.md # ソースURL一覧
|
|
283
|
+
│ └── notes/ # 検索結果メモ
|
|
284
|
+
└── reports/ # 最終的なレポート
|
|
285
|
+
├── report.md # メインレポート
|
|
286
|
+
└── appendix/ # 付録・補足資料
|
|
287
|
+
```
|
|
288
|
+
|
|
289
|
+
### MCPサーバー開発コマンド
|
|
254
290
|
|
|
255
291
|
```bash
|
|
256
292
|
# MCPサーバービルド
|
|
@@ -307,4 +343,4 @@ cd mcp-server && npm start
|
|
|
307
343
|
|
|
308
344
|
**Agent**: GitHub Copilot / Claude
|
|
309
345
|
**Last Updated**: 2026-01-17
|
|
310
|
-
**Version**: 1.
|
|
346
|
+
**Version**: 1.2.0
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nahisaho/shikigami",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.2.1",
|
|
4
4
|
"description": "GitHub Copilot Agent Skills for Deep Research & Consulting - AI-Powered Research Assistant with 50+ Consulting Frameworks",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"github-copilot",
|
|
@@ -22,14 +22,15 @@
|
|
|
22
22
|
"license": "MIT",
|
|
23
23
|
"repository": {
|
|
24
24
|
"type": "git",
|
|
25
|
-
"url": "https://github.com/nahisaho/SHIKIGAMI.git"
|
|
25
|
+
"url": "git+https://github.com/nahisaho/SHIKIGAMI.git"
|
|
26
26
|
},
|
|
27
27
|
"homepage": "https://github.com/nahisaho/SHIKIGAMI#readme",
|
|
28
28
|
"bugs": {
|
|
29
29
|
"url": "https://github.com/nahisaho/SHIKIGAMI/issues"
|
|
30
30
|
},
|
|
31
31
|
"bin": {
|
|
32
|
-
"shikigami
|
|
32
|
+
"shikigami": "scripts/cli.js",
|
|
33
|
+
"shikigami-init": "scripts/init.js"
|
|
33
34
|
},
|
|
34
35
|
"scripts": {
|
|
35
36
|
"postinstall": "node ./scripts/postinstall.js"
|
package/scripts/cli.js
ADDED
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* SHIKIGAMI CLI
|
|
4
|
+
* Usage: npx shikigami [command] [options]
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
const fs = require('fs');
|
|
8
|
+
const path = require('path');
|
|
9
|
+
|
|
10
|
+
const packageJson = require('../package.json');
|
|
11
|
+
|
|
12
|
+
const args = process.argv.slice(2);
|
|
13
|
+
const command = args[0];
|
|
14
|
+
|
|
15
|
+
// Version command
|
|
16
|
+
if (command === '-v' || command === '--version' || command === 'version') {
|
|
17
|
+
console.log(`shikigami v${packageJson.version}`);
|
|
18
|
+
process.exit(0);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
// Help command
|
|
22
|
+
if (command === '-h' || command === '--help' || command === 'help' || !command) {
|
|
23
|
+
console.log(`
|
|
24
|
+
🎭 SHIKIGAMI - Deep Research & Consulting Agent Skills
|
|
25
|
+
========================================================
|
|
26
|
+
|
|
27
|
+
Usage: npx shikigami [command] [options]
|
|
28
|
+
|
|
29
|
+
Commands:
|
|
30
|
+
init Initialize SHIKIGAMI files in current directory
|
|
31
|
+
new [name] Create a new research project
|
|
32
|
+
-v, --version Show version number
|
|
33
|
+
-h, --help Show help
|
|
34
|
+
|
|
35
|
+
Examples:
|
|
36
|
+
npx shikigami init # Initialize SHIKIGAMI
|
|
37
|
+
npx shikigami new my-research # Create new project "my-research"
|
|
38
|
+
npx shikigami new # Create new project with auto-numbered name
|
|
39
|
+
|
|
40
|
+
Version: ${packageJson.version}
|
|
41
|
+
`);
|
|
42
|
+
process.exit(0);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
// Init command (delegate to init.js)
|
|
46
|
+
if (command === 'init') {
|
|
47
|
+
require('./init.js');
|
|
48
|
+
process.exit(0);
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
// New project command
|
|
52
|
+
if (command === 'new') {
|
|
53
|
+
const projectName = args[1];
|
|
54
|
+
createNewProject(projectName);
|
|
55
|
+
process.exit(0);
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
// Unknown command
|
|
59
|
+
console.error(`Unknown command: ${command}`);
|
|
60
|
+
console.log('Run "npx shikigami --help" for usage information.');
|
|
61
|
+
process.exit(1);
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Create a new research project
|
|
65
|
+
*/
|
|
66
|
+
function createNewProject(name) {
|
|
67
|
+
const outputsDir = path.join(process.cwd(), 'outputs');
|
|
68
|
+
|
|
69
|
+
// Ensure outputs directory exists
|
|
70
|
+
if (!fs.existsSync(outputsDir)) {
|
|
71
|
+
fs.mkdirSync(outputsDir, { recursive: true });
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
// Find next project number
|
|
75
|
+
let projectNumber = 1;
|
|
76
|
+
if (fs.existsSync(outputsDir)) {
|
|
77
|
+
const existing = fs.readdirSync(outputsDir)
|
|
78
|
+
.filter(d => d.startsWith('project-'))
|
|
79
|
+
.map(d => {
|
|
80
|
+
const match = d.match(/^project-(\d+)/);
|
|
81
|
+
return match ? parseInt(match[1], 10) : 0;
|
|
82
|
+
})
|
|
83
|
+
.filter(n => !isNaN(n));
|
|
84
|
+
|
|
85
|
+
if (existing.length > 0) {
|
|
86
|
+
projectNumber = Math.max(...existing) + 1;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
// Format project number with leading zeros (3 digits)
|
|
91
|
+
const paddedNumber = String(projectNumber).padStart(3, '0');
|
|
92
|
+
const projectDirName = name
|
|
93
|
+
? `project-${paddedNumber}-${name}`
|
|
94
|
+
: `project-${paddedNumber}`;
|
|
95
|
+
|
|
96
|
+
const projectDir = path.join(outputsDir, projectDirName);
|
|
97
|
+
const researchDir = path.join(projectDir, 'research');
|
|
98
|
+
const reportsDir = path.join(projectDir, 'reports');
|
|
99
|
+
|
|
100
|
+
// Create directories
|
|
101
|
+
fs.mkdirSync(researchDir, { recursive: true });
|
|
102
|
+
fs.mkdirSync(reportsDir, { recursive: true });
|
|
103
|
+
|
|
104
|
+
// Create README.md for the project
|
|
105
|
+
const readmeContent = `# Research Project: ${name || `Project ${paddedNumber}`}
|
|
106
|
+
|
|
107
|
+
Created: ${new Date().toISOString().split('T')[0]}
|
|
108
|
+
|
|
109
|
+
## Directory Structure
|
|
110
|
+
|
|
111
|
+
\`\`\`
|
|
112
|
+
${projectDirName}/
|
|
113
|
+
├── research/ # Web検索で得られた情報
|
|
114
|
+
│ └── ... # 検索結果、ソースメモ等
|
|
115
|
+
└── reports/ # 最終的なレポート
|
|
116
|
+
└── ... # 分析レポート、提案書等
|
|
117
|
+
\`\`\`
|
|
118
|
+
|
|
119
|
+
## Research Notes
|
|
120
|
+
|
|
121
|
+
(Add your research notes here)
|
|
122
|
+
|
|
123
|
+
## Sources
|
|
124
|
+
|
|
125
|
+
(Track your sources here)
|
|
126
|
+
|
|
127
|
+
`;
|
|
128
|
+
|
|
129
|
+
fs.writeFileSync(path.join(projectDir, 'README.md'), readmeContent);
|
|
130
|
+
|
|
131
|
+
// Create .gitkeep files
|
|
132
|
+
fs.writeFileSync(path.join(researchDir, '.gitkeep'), '');
|
|
133
|
+
fs.writeFileSync(path.join(reportsDir, '.gitkeep'), '');
|
|
134
|
+
|
|
135
|
+
console.log(`
|
|
136
|
+
🎭 SHIKIGAMI - New Research Project Created
|
|
137
|
+
============================================
|
|
138
|
+
|
|
139
|
+
📁 Project: ${projectDirName}
|
|
140
|
+
└── research/ # Web検索で得られた情報
|
|
141
|
+
└── reports/ # 最終的なレポート
|
|
142
|
+
|
|
143
|
+
📝 Next steps:
|
|
144
|
+
1. Use @shikigami-full-research prompt to start research
|
|
145
|
+
2. Research data will be saved to: outputs/${projectDirName}/research/
|
|
146
|
+
3. Final reports will be saved to: outputs/${projectDirName}/reports/
|
|
147
|
+
`);
|
|
148
|
+
}
|