oh-my-til 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/README.ko.md +5 -11
- package/README.md +5 -11
- package/dist/cli.js +26 -0
- package/manifest.json +1 -1
- package/package.json +1 -1
package/README.ko.md
CHANGED
|
@@ -101,15 +101,6 @@ ELECTRON_VERSION=37.10.2 npx oh-my-til init /path/to/your/vault
|
|
|
101
101
|
|
|
102
102
|
> Electron 버전 확인: Obsidian 개발자 도구(Ctrl+Shift+I)에서 `process.versions.electron` 실행
|
|
103
103
|
|
|
104
|
-
#### Claude Code로 설치
|
|
105
|
-
|
|
106
|
-
```bash
|
|
107
|
-
git clone https://github.com/SongYunSeop/oh-my-til.git
|
|
108
|
-
cd oh-my-til
|
|
109
|
-
claude
|
|
110
|
-
# 실행 후: /install-plugin /path/to/your/vault
|
|
111
|
-
```
|
|
112
|
-
|
|
113
104
|
#### 수동 설치 (소스에서)
|
|
114
105
|
|
|
115
106
|
```bash
|
|
@@ -171,6 +162,9 @@ MCP 서버 연결 시 Claude Code에서 사용할 수 있는 도구:
|
|
|
171
162
|
| **backlog** | `/backlog [카테고리]` | 학습 백로그 조회 및 진행 상황 요약 |
|
|
172
163
|
| **save** | *(/til에서 자동 호출)* | TIL 마크다운 저장 + Daily 노트, MOC, 백로그 연동 |
|
|
173
164
|
| **til-review** | `/til-review [카테고리]` | SRS 기반 간격 반복 복습 세션 (SM-2 알고리즘) |
|
|
165
|
+
| **dashboard** | `/dashboard` | 학습 대시보드 — 통계, 활동 히트맵, 카테고리, 백로그 진행률 |
|
|
166
|
+
| **omt-setup** | `/omt-setup [서브커맨드]` | 통합 설정 — init, deploy, oh-my-til 관리 |
|
|
167
|
+
| **setup-obsidian** | `/setup-obsidian` | 현재 vault에 Obsidian 데스크톱 플러그인 설치 |
|
|
174
168
|
|
|
175
169
|
## 개발
|
|
176
170
|
|
|
@@ -191,7 +185,7 @@ src/
|
|
|
191
185
|
│ ├── context.ts # 학습 컨텍스트 헬퍼 (순수 함수)
|
|
192
186
|
│ ├── stats.ts # TIL 통계 순수 함수
|
|
193
187
|
│ ├── srs.ts # SRS 간격 반복 (SM-2 알고리즘, 복습 카드/통계)
|
|
194
|
-
│ ├── migrate-links.ts # Wikilink [[]] → [](path) 변환
|
|
188
|
+
│ ├── migrate-links.ts # Wikilink [[]] → [](path) 변환 (내부 유틸리티)
|
|
195
189
|
│ ├── keyboard.ts # Shift+Enter → \n (멀티라인 지원)
|
|
196
190
|
│ ├── env.ts # macOS PATH 보정 (Homebrew)
|
|
197
191
|
│ ├── skills.ts # 버전 비교/플레이스홀더 치환 순수 함수
|
|
@@ -212,7 +206,7 @@ src/
|
|
|
212
206
|
│ └── tools.ts # MCP 도구 정의 (FileStorage + MetadataProvider 사용)
|
|
213
207
|
├── plugin-install.ts # 플러그인 에셋 자동 설치/업데이트 (skills, agents, CLAUDE.md 섹션)
|
|
214
208
|
├── cli/ # 독립 CLI 진입점
|
|
215
|
-
│ ├── index.ts # npx oh-my-til init / serve / deploy
|
|
209
|
+
│ ├── index.ts # npx oh-my-til init / serve / mcp / install-obsidian / deploy
|
|
216
210
|
│ └── obsidian-install.ts # Obsidian 플러그인 자동 설치 (Electron 감지, node-pty 재빌드)
|
|
217
211
|
└── obsidian/ # Obsidian 플랫폼 어댑터
|
|
218
212
|
├── main.ts # 플러그인 진입점
|
package/README.md
CHANGED
|
@@ -101,15 +101,6 @@ ELECTRON_VERSION=37.10.2 npx oh-my-til init /path/to/your/vault
|
|
|
101
101
|
|
|
102
102
|
> To find your Electron version, open Obsidian's Developer Tools (Ctrl+Shift+I) and run `process.versions.electron`.
|
|
103
103
|
|
|
104
|
-
#### Using Claude Code
|
|
105
|
-
|
|
106
|
-
```bash
|
|
107
|
-
git clone https://github.com/SongYunSeop/oh-my-til.git
|
|
108
|
-
cd oh-my-til
|
|
109
|
-
claude
|
|
110
|
-
# Then run: /install-plugin /path/to/your/vault
|
|
111
|
-
```
|
|
112
|
-
|
|
113
104
|
#### Manual Installation (from source)
|
|
114
105
|
|
|
115
106
|
```bash
|
|
@@ -171,6 +162,9 @@ The plugin auto-installs these skills to `.claude/skills/`:
|
|
|
171
162
|
| **backlog** | `/backlog [category]` | View learning backlog and progress |
|
|
172
163
|
| **save** | *(auto-invoked by /til)* | Save TIL markdown with Daily note, MOC, and backlog updates |
|
|
173
164
|
| **til-review** | `/til-review [category]` | SRS-based spaced repetition review session (SM-2 algorithm) |
|
|
165
|
+
| **dashboard** | `/dashboard` | Learning dashboard — stats, activity heatmap, categories, backlog progress |
|
|
166
|
+
| **omt-setup** | `/omt-setup [subcommand]` | Unified setup — init, deploy, and manage oh-my-til |
|
|
167
|
+
| **setup-obsidian** | `/setup-obsidian` | Install the Obsidian desktop plugin in the current vault |
|
|
174
168
|
|
|
175
169
|
## Development
|
|
176
170
|
|
|
@@ -191,7 +185,7 @@ src/
|
|
|
191
185
|
│ ├── context.ts # Learning context helpers (pure functions)
|
|
192
186
|
│ ├── stats.ts # TIL statistics (pure functions)
|
|
193
187
|
│ ├── srs.ts # Spaced repetition (SM-2 algorithm, review cards/stats)
|
|
194
|
-
│ ├── migrate-links.ts # Wikilink [[]] → [](path) conversion
|
|
188
|
+
│ ├── migrate-links.ts # Wikilink [[]] → [](path) conversion (internal utility)
|
|
195
189
|
│ ├── keyboard.ts # Shift+Enter → \n (multiline support)
|
|
196
190
|
│ ├── env.ts # macOS PATH resolution (Homebrew)
|
|
197
191
|
│ ├── skills.ts # Version comparison / placeholder substitution
|
|
@@ -212,7 +206,7 @@ src/
|
|
|
212
206
|
│ └── tools.ts # MCP tool definitions (FileStorage + MetadataProvider)
|
|
213
207
|
├── plugin-install.ts # Plugin asset auto-install/update (skills, agents, CLAUDE.md section)
|
|
214
208
|
├── cli/ # Standalone CLI entry point
|
|
215
|
-
│ ├── index.ts # npx oh-my-til init / serve / deploy
|
|
209
|
+
│ ├── index.ts # npx oh-my-til init / serve / mcp / install-obsidian / deploy
|
|
216
210
|
│ └── obsidian-install.ts # Auto-install Obsidian plugin (Electron detection, node-pty rebuild)
|
|
217
211
|
└── obsidian/ # Obsidian platform adapter
|
|
218
212
|
├── main.ts # Plugin entry point
|
package/dist/cli.js
CHANGED
|
@@ -41269,6 +41269,7 @@ Usage:
|
|
|
41269
41269
|
oh-my-til init [<path>] [options] Install skills, rules, and CLAUDE.md
|
|
41270
41270
|
oh-my-til serve [<path>] [options] Start MCP server (HTTP)
|
|
41271
41271
|
oh-my-til mcp [<path>] [options] Start MCP server (stdio)
|
|
41272
|
+
oh-my-til install-obsidian [<path>] Install Obsidian desktop plugin only
|
|
41272
41273
|
oh-my-til deploy [<path>] [options] Generate static site from TIL files
|
|
41273
41274
|
oh-my-til version Print version
|
|
41274
41275
|
|
|
@@ -41400,6 +41401,31 @@ To start MCP server: oh-my-til serve ${basePath}`);
|
|
|
41400
41401
|
console.log(`MCP server running on http://localhost:${port}/mcp`);
|
|
41401
41402
|
console.log(`TIL path: ${tilPath}`);
|
|
41402
41403
|
console.log("Press Ctrl+C to stop");
|
|
41404
|
+
} else if (command === "install-obsidian") {
|
|
41405
|
+
const obsidianDir = path5.join(basePath, ".obsidian");
|
|
41406
|
+
if (!fs4.existsSync(obsidianDir)) {
|
|
41407
|
+
console.error("No .obsidian/ folder found. Run this command inside an Obsidian vault.");
|
|
41408
|
+
process.exit(1);
|
|
41409
|
+
}
|
|
41410
|
+
console.log("Installing Obsidian plugin...");
|
|
41411
|
+
const packageRoot = path5.resolve(__dirname, "..");
|
|
41412
|
+
const result = installObsidianPlugin(basePath, packageRoot);
|
|
41413
|
+
if (result.success) {
|
|
41414
|
+
console.log(`Plugin installed: ${result.pluginDir}`);
|
|
41415
|
+
if (result.rebuilt) {
|
|
41416
|
+
console.log("node-pty rebuilt for Electron.");
|
|
41417
|
+
}
|
|
41418
|
+
for (const w of result.warnings) {
|
|
41419
|
+
console.warn(`Warning: ${w}`);
|
|
41420
|
+
}
|
|
41421
|
+
console.log("Restart Obsidian or reload the plugin to activate.");
|
|
41422
|
+
} else {
|
|
41423
|
+
console.error("Plugin installation failed:");
|
|
41424
|
+
for (const w of result.warnings) {
|
|
41425
|
+
console.error(` ${w}`);
|
|
41426
|
+
}
|
|
41427
|
+
process.exit(1);
|
|
41428
|
+
}
|
|
41403
41429
|
} else if (command === "deploy") {
|
|
41404
41430
|
const { loadOmtConfig: loadOmtConfig2 } = await Promise.resolve().then(() => (init_config(), config_exports));
|
|
41405
41431
|
const omtConfig = loadOmtConfig2(basePath);
|
package/manifest.json
CHANGED