Initial commit: Complete Obsidian + Claude Code PKM Starter Kit

- Core structure with README, LICENSE, and .gitignore
- Complete vault template with Goals, Daily Notes, Projects, and Templates
- Cascading goal system (3-year → yearly → monthly → weekly)
- Claude Code integration with custom slash commands
- GitHub Actions workflow for mobile integration
- Comprehensive documentation (setup, customization, workflows, troubleshooting)
- Automation scripts for setup (Unix/Mac and Windows)
- Example content showing system usage
- Self-documenting templates with inline instructions

Ready for users to clone and customize for their personal knowledge management needs.
This commit is contained in:
Bill Allred
2025-08-07 17:11:26 -07:00
commit 3877057f7c
28 changed files with 6178 additions and 0 deletions

249
scripts/setup.bat Normal file
View File

@@ -0,0 +1,249 @@
@echo off
REM Obsidian + Claude Code PKM Setup Script for Windows
REM This script automates the initial setup of your PKM system
setlocal enabledelayedexpansion
REM Colors setup (Windows 10+)
echo.
echo =====================================
echo Obsidian + Claude Code PKM Setup
echo Version 1.0 for Windows
echo =====================================
echo.
REM Step 1: Check Prerequisites
echo Step 1: Checking Prerequisites
echo ==============================
REM Check for Git
where git >nul 2>nul
if %errorlevel%==0 (
echo [OK] Git is installed
git --version
) else (
echo [ERROR] Git is not installed
echo Please install Git from: https://git-scm.com/
pause
exit /b 1
)
REM Check for Claude Code
where claude >nul 2>nul
if %errorlevel%==0 (
echo [OK] Claude Code is installed
) else (
echo [WARNING] Claude Code CLI not found
echo Install from: https://docs.anthropic.com/en/docs/claude-code
set /p CONTINUE="Continue without Claude Code? (y/n): "
if /i not "!CONTINUE!"=="y" exit /b 1
)
echo.
REM Step 2: Get Vault Location
echo Step 2: Choose Vault Location
echo ==============================
set DEFAULT_VAULT=%USERPROFILE%\Documents\ObsidianPKM
set /p VAULT_PATH="Where should we create your vault? [%DEFAULT_VAULT%]: "
if "%VAULT_PATH%"=="" set VAULT_PATH=%DEFAULT_VAULT%
REM Check if directory exists
if exist "%VAULT_PATH%" (
echo [WARNING] Directory already exists: %VAULT_PATH%
set /p USE_EXISTING="Use existing directory? Files may be overwritten (y/n): "
if /i not "!USE_EXISTING!"=="y" (
echo Setup cancelled
pause
exit /b 1
)
) else (
mkdir "%VAULT_PATH%"
echo [OK] Created vault directory: %VAULT_PATH%
)
echo.
REM Step 3: Copy Vault Template
echo Step 3: Setting Up Vault Structure
echo ===================================
set SCRIPT_DIR=%~dp0
set TEMPLATE_DIR=%SCRIPT_DIR%..\vault-template
echo Copying template files...
xcopy /E /I /Y "%TEMPLATE_DIR%\*" "%VAULT_PATH%\" >nul 2>nul
echo [OK] Vault structure created
echo.
REM Step 4: Set Up Claude Commands
echo Step 4: Setting Up Claude Commands
echo ===================================
where claude >nul 2>nul
if %errorlevel%==0 (
REM Commands are already in vault-template\.claude\commands\
REM Just need to initialize Claude
cd /d "%VAULT_PATH%"
REM Check if commands were copied
if exist "%VAULT_PATH%\.claude\commands" (
echo [OK] Claude commands already in place
) else (
echo [WARNING] Claude commands directory not found
)
REM Initialize Claude in vault
claude init 2>nul
echo [OK] Claude Code initialized in vault
) else (
echo [WARNING] Skipping Claude Code setup - not installed
)
echo.
REM Step 5: Initialize Git
echo Step 5: Git Repository Setup
echo ============================
cd /d "%VAULT_PATH%"
if exist .git (
echo [WARNING] Git repository already exists
) else (
git init >nul
echo [OK] Git repository initialized
)
REM Configure Git
set /p GIT_NAME="Enter your name for Git commits: "
set /p GIT_EMAIL="Enter your email for Git commits: "
if not "%GIT_NAME%"=="" (
git config user.name "%GIT_NAME%"
echo [OK] Git user name set
)
if not "%GIT_EMAIL%"=="" (
git config user.email "%GIT_EMAIL%"
echo [OK] Git user email set
)
REM Initial commit
git add . >nul 2>nul
git commit -m "Initial PKM setup" >nul 2>nul
echo [OK] Initial commit created
echo.
REM Step 6: GitHub Setup (Optional)
echo Step 6: GitHub Integration - Optional
echo ======================================
set /p SETUP_GITHUB="Do you want to set up GitHub integration? (y/n): "
if /i "%SETUP_GITHUB%"=="y" (
set /p GITHUB_URL="Enter your GitHub repository URL (or press Enter to skip): "
if not "!GITHUB_URL!"=="" (
git remote add origin "!GITHUB_URL!" 2>nul || git remote set-url origin "!GITHUB_URL!"
echo [OK] GitHub remote configured
set /p PUSH_NOW="Push to GitHub now? (y/n): "
if /i "!PUSH_NOW!"=="y" (
git push -u origin main 2>nul || git push -u origin master
echo [OK] Pushed to GitHub
)
REM Set up GitHub Action
mkdir "%VAULT_PATH%\.github\workflows" 2>nul
copy "%SCRIPT_DIR%..\github-actions\claude.yml" "%VAULT_PATH%\.github\workflows\" >nul
echo [OK] GitHub Action workflow copied
echo [NOTE] Remember to add CLAUDE_CODE_OAUTH_TOKEN to repository secrets
)
)
echo.
REM Step 7: Personalization
echo Step 7: Initial Personalization
echo ================================
echo.
echo What's your personal mission or life purpose?
echo Example: Build meaningful technology while maintaining balance
set /p MISSION="Your mission: "
if not "%MISSION%"=="" (
REM This is simplified - proper text replacement in batch is complex
echo [OK] Personal mission noted - please update CLAUDE.md manually
)
echo.
echo What's your main focus right now?
set /p FOCUS="Current focus: "
REM Create first daily note
for /f "tokens=1-3 delims=/ " %%a in ('date /t') do (
set TODAY=%%c-%%a-%%b
)
set TODAY=%TODAY: =%
set DAILY_NOTE=%VAULT_PATH%\Daily Notes\%TODAY%.md
if not exist "%DAILY_NOTE%" (
echo Creating your first daily note...
copy "%VAULT_PATH%\Templates\Daily Template.md" "%DAILY_NOTE%" >nul
echo [OK] First daily note created: %TODAY%.md
)
echo.
REM Step 8: Final Setup
echo Step 8: Finalizing Setup
echo ========================
REM Create a setup completion marker
echo Setup completed on %date% %time% > "%VAULT_PATH%\.setup_complete"
REM Commit personalization
cd /d "%VAULT_PATH%"
git add . >nul 2>nul
git commit -m "Personalized PKM setup" >nul 2>nul
echo.
echo =============================================
echo Setup Complete!
echo =============================================
echo.
echo Your PKM system is ready at: %VAULT_PATH%
echo.
echo Next steps:
echo 1. Open Obsidian and select your vault folder
echo 2. Explore the Goals folder to set your objectives
echo 3. Start using daily notes with: claude code /daily
echo 4. Run weekly reviews with: claude code /weekly
echo.
echo Quick Commands:
echo cd "%VAULT_PATH%" - Navigate to your vault
echo claude code /onboard - Load context into Claude
echo claude code /daily - Create today's note
echo claude code /push - Save changes to Git
echo.
echo Read the documentation in docs\ for detailed guidance
echo.
REM Offer to open Obsidian
if exist "%LOCALAPPDATA%\Obsidian\Obsidian.exe" (
set /p OPEN_OBSIDIAN="Open Obsidian now? (y/n): "
if /i "!OPEN_OBSIDIAN!"=="y" (
start "" "%LOCALAPPDATA%\Obsidian\Obsidian.exe"
echo [OK] Obsidian launched
)
)
echo.
echo Happy note-taking!
echo.
pause