golem-cc 1.0.2 → 2.0.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 CHANGED
@@ -5,21 +5,33 @@ Personal agentic workflow manager. Integrates Freshservice tickets, Gitea issues
5
5
  ## Installation
6
6
 
7
7
  ```bash
8
- # Install globally via npm
9
- npm install -g golem-cc
10
-
11
- # Or run directly with pnpm
8
+ # Bootstrap (one command)
12
9
  pnpm dlx golem-cc
13
10
  ```
14
11
 
15
- After installing, run the setup:
12
+ This copies everything to `~/.golem/`, links binaries to `~/.local/bin/`, and wires up Claude slash-commands.
13
+
14
+ After installing, restart your shell and configure:
16
15
 
17
16
  ```bash
18
- # Check your installation
17
+ # Verify setup
19
18
  golem doctor
20
19
 
21
- # Configure credentials
20
+ # Edit credentials
22
21
  vim ~/.golem/.env
22
+
23
+ # Initialize a project
24
+ cd your-project && golem init
25
+ ```
26
+
27
+ ### Updating
28
+
29
+ ```bash
30
+ # From a running install
31
+ golem install
32
+
33
+ # Or from a local checkout (dev workflow)
34
+ golem install --from /path/to/golem-cc
23
35
  ```
24
36
 
25
37
  ## Architecture
package/bin/golem CHANGED
@@ -8,7 +8,7 @@
8
8
 
9
9
  set -euo pipefail
10
10
 
11
- VERSION="0.1.0"
11
+ VERSION="2.0.0"
12
12
  GOLEM_HOME="${GOLEM_HOME:-$HOME/.golem}"
13
13
  GOLEM_API="golem-api"
14
14
 
@@ -124,6 +124,7 @@ SYNC COMMANDS:
124
124
 
125
125
  OTHER:
126
126
  install Install/update golem globally
127
+ uninstall Remove golem completely
127
128
  config Show current configuration
128
129
  doctor Diagnose setup issues
129
130
  init Initialize golem in current project
@@ -148,7 +149,15 @@ cmd_version() {
148
149
 
149
150
  cmd_init() {
150
151
  print_banner
151
- info "Initializing golem..."
152
+
153
+ # Validate global installation
154
+ if [[ ! -d "$GOLEM_HOME/lib" ]]; then
155
+ warn "Golem is not installed globally."
156
+ echo " Run: pnpm dlx golem-cc"
157
+ echo ""
158
+ fi
159
+
160
+ info "Initializing golem in current project..."
152
161
 
153
162
  mkdir -p .golem/{specs,tickets,worktrees}
154
163
 
@@ -184,6 +193,8 @@ EOF
184
193
  if [[ -d "$GOLEM_HOME/commands/golem" ]]; then
185
194
  ln -sf "$GOLEM_HOME/commands/golem" .claude/commands/golem 2>/dev/null || true
186
195
  success "Linked Claude commands"
196
+ else
197
+ warn "Claude commands not found (install golem globally first)"
187
198
  fi
188
199
 
189
200
  # Add .golem to .gitignore
@@ -507,68 +518,175 @@ Branch: $branch" \
507
518
  success "PR created"
508
519
  }
509
520
 
510
- cmd_install() {
511
- print_banner
512
- info "Installing/updating golem..."
513
-
514
- local src_dir="$GOLEM_HOME/src"
521
+ # Resolve the package root from this script's location.
522
+ # When run via pnpm dlx, $0 lives inside a temp store.
523
+ # When run from ~/.golem/lib, $0 is there.
524
+ _resolve_pkg_root() {
525
+ local script_path
526
+ script_path="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
527
+ # bin/ is one level under package root
528
+ echo "$(cd "$script_path/.." && pwd)"
529
+ }
515
530
 
516
- # Clone or update
517
- if [[ -d "$src_dir/.git" ]]; then
518
- info "Updating existing installation..."
519
- git -C "$src_dir" pull --ff-only || die "Failed to update. Try: rm -rf $src_dir"
520
- else
521
- info "Cloning golem..."
522
- mkdir -p "$GOLEM_HOME"
523
- git clone https://github.com/daresTheDevil/golem.git "$src_dir" || die "Failed to clone"
524
- fi
531
+ # Bootstrap: copy package contents into ~/.golem/lib and wire everything up.
532
+ cmd_bootstrap() {
533
+ local pkg_root
534
+ pkg_root="$(_resolve_pkg_root)"
525
535
 
526
- # Build
527
- info "Building..."
528
- cd "$src_dir"
529
- pnpm install --silent || die "pnpm install failed"
530
- pnpm build || die "Build failed"
536
+ print_banner
537
+ info "Installing golem to $GOLEM_HOME..."
538
+
539
+ # ---- runtime ----
540
+ mkdir -p "$GOLEM_HOME/lib"
541
+ # Copy the package runtime (bin, dist, node_modules, package.json)
542
+ for item in bin dist node_modules package.json; do
543
+ if [[ -e "$pkg_root/$item" ]]; then
544
+ rm -rf "$GOLEM_HOME/lib/$item"
545
+ cp -R "$pkg_root/$item" "$GOLEM_HOME/lib/$item"
546
+ fi
547
+ done
548
+ success "Installed runtime to $GOLEM_HOME/lib"
531
549
 
532
- # Copy assets
533
- info "Installing assets..."
550
+ # ---- assets ----
534
551
  mkdir -p "$GOLEM_HOME"/{commands,agents,prompts}
535
- cp -r "$src_dir/commands/golem" "$GOLEM_HOME/commands/"
536
- cp "$src_dir/golem/agents/"*.md "$GOLEM_HOME/agents/"
537
- cp "$src_dir/golem/prompts/"*.md "$GOLEM_HOME/prompts/"
552
+ if [[ -d "$pkg_root/commands/golem" ]]; then
553
+ rm -rf "$GOLEM_HOME/commands/golem"
554
+ cp -R "$pkg_root/commands/golem" "$GOLEM_HOME/commands/golem"
555
+ fi
556
+ if compgen -G "$pkg_root/golem/agents/"*.md &>/dev/null; then
557
+ cp "$pkg_root/golem/agents/"*.md "$GOLEM_HOME/agents/"
558
+ fi
559
+ if compgen -G "$pkg_root/golem/prompts/"*.md &>/dev/null; then
560
+ cp "$pkg_root/golem/prompts/"*.md "$GOLEM_HOME/prompts/"
561
+ fi
562
+ success "Installed assets (commands, agents, prompts)"
538
563
 
539
- # Link binaries
564
+ # ---- symlinks in ~/.local/bin ----
540
565
  mkdir -p "$HOME/.local/bin"
541
- ln -sf "$src_dir/bin/golem" "$HOME/.local/bin/golem"
542
- ln -sf "$src_dir/dist/cli/index.js" "$HOME/.local/bin/golem-api"
543
- chmod +x "$src_dir/dist/cli/index.js"
566
+ ln -sf "$GOLEM_HOME/lib/bin/golem" "$HOME/.local/bin/golem"
567
+ ln -sf "$GOLEM_HOME/lib/dist/cli/index.js" "$HOME/.local/bin/golem-api"
568
+ chmod +x "$GOLEM_HOME/lib/bin/golem"
569
+ chmod +x "$GOLEM_HOME/lib/dist/cli/index.js" 2>/dev/null || true
570
+ success "Linked binaries to ~/.local/bin"
544
571
 
545
- # Link Claude commands
572
+ # ---- Claude slash-commands ----
546
573
  mkdir -p "$HOME/.claude/commands"
547
574
  ln -sf "$GOLEM_HOME/commands/golem" "$HOME/.claude/commands/golem" 2>/dev/null || true
575
+ success "Linked Claude commands"
548
576
 
549
- # Create env template if needed
577
+ # ---- .env template ----
578
+ if [[ -f "$pkg_root/.env.example" ]]; then
579
+ cp "$pkg_root/.env.example" "$GOLEM_HOME/.env.example"
580
+ fi
550
581
  if [[ ! -f "$GOLEM_HOME/.env" ]]; then
551
- cat > "$GOLEM_HOME/.env" << 'ENVEOF'
552
- # Freshservice
582
+ if [[ -f "$GOLEM_HOME/.env.example" ]]; then
583
+ cp "$GOLEM_HOME/.env.example" "$GOLEM_HOME/.env"
584
+ else
585
+ cat > "$GOLEM_HOME/.env" << 'ENVEOF'
586
+ # Freshworks/Freshservice
553
587
  FRESH_DOMAIN=yourcompany.freshservice.com
554
- FRESH_API_KEY=your_api_key
588
+ FRESH_API_KEY=your_api_key_here
589
+
590
+ # Gitea (on-prem)
591
+ GITEA_URL=https://dev.pearlriverresort.com
592
+ GITEA_TOKEN=your_token_here
593
+ GITEA_ORG=CRDE
555
594
 
556
- # Gitea
557
- GITEA_URL=https://gitea.example.com
558
- GITEA_TOKEN=your_token
559
- GITEA_ORG=your-org
560
- GITEA_REPO=default-repo
595
+ # Default repo for issues (can be overridden per-project)
596
+ GITEA_REPO=
561
597
  ENVEOF
562
- warn "Created $GOLEM_HOME/.env - edit with your credentials"
598
+ fi
599
+ warn "Created $GOLEM_HOME/.env — edit with your credentials"
600
+ fi
601
+
602
+ # ---- PATH setup (idempotent) ----
603
+ local shell_rc="$HOME/.zshrc"
604
+ [[ -f "$HOME/.bashrc" && ! -f "$HOME/.zshrc" ]] && shell_rc="$HOME/.bashrc"
605
+
606
+ if [[ -f "$shell_rc" ]]; then
607
+ if ! grep -q '$HOME/.local/bin' "$shell_rc" 2>/dev/null; then
608
+ echo '' >> "$shell_rc"
609
+ echo '# golem: add ~/.local/bin to PATH' >> "$shell_rc"
610
+ echo 'export PATH="$HOME/.local/bin:$PATH"' >> "$shell_rc"
611
+ success "Added ~/.local/bin to PATH in $(basename "$shell_rc")"
612
+ fi
563
613
  fi
564
614
 
565
615
  echo ""
566
616
  success "Installation complete!"
567
617
  echo ""
568
- echo "Make sure ~/.local/bin is in your PATH:"
569
- echo ' export PATH="$HOME/.local/bin:$PATH"'
618
+ echo "Restart your shell (or run: source $shell_rc), then:"
619
+ echo " golem doctor # verify setup"
620
+ echo " golem config # show configuration"
621
+ echo " cd <project> && golem init # set up a project"
622
+ }
623
+
624
+ cmd_uninstall() {
625
+ print_banner
626
+ echo -e "${BOLD}This will remove:${NC}"
627
+ echo " $GOLEM_HOME (runtime, assets, config)"
628
+ echo " ~/.local/bin/golem (symlink)"
629
+ echo " ~/.local/bin/golem-api (symlink)"
630
+ echo " ~/.claude/commands/golem (symlink)"
570
631
  echo ""
571
- echo "Then run: golem doctor"
632
+
633
+ # Check for .env with real credentials and warn
634
+ if [[ -f "$GOLEM_HOME/.env" ]]; then
635
+ warn "Your credentials in $GOLEM_HOME/.env will be deleted."
636
+ echo " Back up now if needed: cp $GOLEM_HOME/.env ~/golem-env-backup"
637
+ echo ""
638
+ fi
639
+
640
+ read -p "Are you sure? [y/N] " confirm
641
+ [[ "$confirm" != "y" && "$confirm" != "Y" ]] && { echo "Aborted."; exit 0; }
642
+
643
+ # Remove symlinks in ~/.local/bin
644
+ for bin in golem golem-api; do
645
+ local target="$HOME/.local/bin/$bin"
646
+ if [[ -L "$target" || -f "$target" ]]; then
647
+ rm -f "$target"
648
+ success "Removed $target"
649
+ fi
650
+ done
651
+
652
+ # Remove Claude commands symlink
653
+ if [[ -L "$HOME/.claude/commands/golem" || -d "$HOME/.claude/commands/golem" ]]; then
654
+ rm -rf "$HOME/.claude/commands/golem"
655
+ success "Removed ~/.claude/commands/golem"
656
+ fi
657
+
658
+ # Remove ~/.golem entirely
659
+ if [[ -d "$GOLEM_HOME" ]]; then
660
+ rm -rf "$GOLEM_HOME"
661
+ success "Removed $GOLEM_HOME"
662
+ fi
663
+
664
+ echo ""
665
+ success "Golem uninstalled."
666
+ echo ""
667
+ dim "The PATH entry in your shell rc was left in place (it's harmless)."
668
+ dim "To reinstall later: pnpm dlx golem-cc"
669
+ }
670
+
671
+ cmd_install() {
672
+ # If --from <path> given, bootstrap from a local checkout (dev workflow)
673
+ if [[ "${1:-}" == "--from" ]]; then
674
+ local local_path="${2:-}"
675
+ [[ -z "$local_path" ]] && die "Usage: golem install --from <path>"
676
+ [[ ! -d "$local_path/bin" ]] && die "Not a golem package directory: $local_path"
677
+
678
+ # Temporarily override _resolve_pkg_root
679
+ _resolve_pkg_root() { echo "$local_path"; }
680
+ cmd_bootstrap
681
+ return
682
+ fi
683
+
684
+ print_banner
685
+ info "Updating golem via pnpm dlx..."
686
+ echo ""
687
+
688
+ # Re-run pnpm dlx golem-cc which will hit the bootstrap path
689
+ pnpm dlx golem-cc || die "Update failed"
572
690
  }
573
691
 
574
692
  cmd_config() {
@@ -715,7 +833,7 @@ cmd_doctor() {
715
833
  if command -v golem-api &>/dev/null; then
716
834
  check_pass "golem-api accessible"
717
835
  else
718
- check_fail "golem-api not found" "Run: ./bin/install.sh in golem directory"
836
+ check_fail "golem-api not found" "Run: pnpm dlx golem-cc"
719
837
  fi
720
838
 
721
839
  echo ""
@@ -723,24 +841,30 @@ cmd_doctor() {
723
841
  # Installation checks
724
842
  echo -e "${BOLD}Installation${NC}"
725
843
 
844
+ if [[ -d "$GOLEM_HOME/lib" ]]; then
845
+ check_pass "Runtime installed ($GOLEM_HOME/lib)"
846
+ else
847
+ check_fail "Runtime not installed" "Run: pnpm dlx golem-cc"
848
+ fi
849
+
726
850
  local prompt_count=$(ls "$GOLEM_HOME/prompts/"*.md 2>/dev/null | wc -l | tr -d ' ')
727
851
  if [[ "$prompt_count" -gt 0 ]]; then
728
852
  check_pass "Prompts installed ($prompt_count files)"
729
853
  else
730
- check_fail "No prompts installed" "Run: ./bin/install.sh"
854
+ check_fail "No prompts installed" "Run: pnpm dlx golem-cc"
731
855
  fi
732
856
 
733
857
  local agent_count=$(ls "$GOLEM_HOME/agents/"*.md 2>/dev/null | wc -l | tr -d ' ')
734
858
  if [[ "$agent_count" -gt 0 ]]; then
735
859
  check_pass "Agents installed ($agent_count files)"
736
860
  else
737
- check_fail "No agents installed" "Run: ./bin/install.sh"
861
+ check_fail "No agents installed" "Run: pnpm dlx golem-cc"
738
862
  fi
739
863
 
740
864
  if [[ -d "$GOLEM_HOME/commands/golem" ]]; then
741
865
  check_pass "Commands installed"
742
866
  else
743
- check_fail "Commands not installed" "Run: ./bin/install.sh"
867
+ check_fail "Commands not installed" "Run: pnpm dlx golem-cc"
744
868
  fi
745
869
 
746
870
  if [[ -L "$HOME/.claude/commands/golem" ]] && [[ -d "$HOME/.claude/commands/golem" ]]; then
@@ -786,9 +910,19 @@ cmd_doctor() {
786
910
  # ============================================================================
787
911
 
788
912
  main() {
789
- local cmd="${1:-help}"
913
+ local cmd="${1:-}"
790
914
  shift || true
791
915
 
916
+ # No args: bootstrap if not installed, otherwise show help
917
+ if [[ -z "$cmd" ]]; then
918
+ if [[ -d "$GOLEM_HOME/lib" ]]; then
919
+ cmd_help
920
+ else
921
+ cmd_bootstrap
922
+ fi
923
+ return
924
+ fi
925
+
792
926
  case "$cmd" in
793
927
  help|--help|-h)
794
928
  cmd_help
@@ -844,6 +978,9 @@ main() {
844
978
  install)
845
979
  cmd_install "$@"
846
980
  ;;
981
+ uninstall)
982
+ cmd_uninstall "$@"
983
+ ;;
847
984
  *)
848
985
  die "Unknown command: $cmd. Run 'golem help' for usage."
849
986
  ;;
package/package.json CHANGED
@@ -1,13 +1,22 @@
1
1
  {
2
2
  "name": "golem-cc",
3
- "version": "1.0.2",
3
+ "version": "2.0.0",
4
4
  "description": "Personal agentic workflow: Freshworks ↔ Gitea ↔ Local development",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/daresTheDevil/golem"
8
8
  },
9
9
  "type": "module",
10
+ "files": [
11
+ "bin/",
12
+ "dist/",
13
+ "commands/",
14
+ "golem/",
15
+ ".env.example",
16
+ "README.md"
17
+ ],
10
18
  "bin": {
19
+ "golem-cc": "./bin/golem",
11
20
  "golem": "./bin/golem",
12
21
  "golem-api": "./dist/cli/index.js"
13
22
  },
@@ -15,8 +24,7 @@
15
24
  "build": "tsc",
16
25
  "dev": "tsc --watch",
17
26
  "lint": "eslint src/",
18
- "typecheck": "tsc --noEmit",
19
- "install:global": "./bin/install.sh"
27
+ "typecheck": "tsc --noEmit"
20
28
  },
21
29
  "dependencies": {
22
30
  "chalk": "^5.3.0",
@@ -1,42 +0,0 @@
1
- name: Publish to npm
2
-
3
- on:
4
- push:
5
- tags:
6
- - 'v*'
7
-
8
- jobs:
9
- publish:
10
- runs-on: ubuntu-latest
11
- permissions:
12
- contents: read
13
- id-token: write
14
- steps:
15
- - uses: actions/checkout@v4
16
-
17
- - uses: actions/setup-node@v4
18
- with:
19
- node-version: '20'
20
- registry-url: 'https://registry.npmjs.org'
21
-
22
- - name: Upgrade npm for OIDC support
23
- run: npm install -g npm@latest
24
-
25
- - uses: pnpm/action-setup@v2
26
- with:
27
- version: 9
28
-
29
- - name: Install dependencies
30
- run: pnpm install
31
-
32
- - name: Build
33
- run: pnpm build
34
-
35
- - name: Sync package.json version from git tag
36
- run: |
37
- VERSION=${GITHUB_REF#refs/tags/v}
38
- echo "Setting version to $VERSION"
39
- npm version $VERSION --no-git-tag-version --allow-same-version
40
-
41
- - name: Publish to npm
42
- run: npm publish --access public --provenance
@@ -1,59 +0,0 @@
1
- # Implementation Plan
2
-
3
- Ticket: LOCAL-DEV (no external ticket)
4
- Generated: 2026-02-04
5
- Based on: .golem/specs/config-command.md, .golem/specs/doctor-command.md
6
-
7
- ## Status
8
- - Stages: 2
9
- - Completed: 0
10
- - Current: Stage 1
11
-
12
- ---
13
-
14
- ## Stage 1: Config Command
15
- Commit: feat(cli): add golem config command to display configuration status
16
-
17
- ### [x] 1.1. Add cmd_config function to bin/golem
18
- Files: bin/golem
19
- Notes: Add function that displays GOLEM_HOME, env file locations, and all env vars with appropriate masking for secrets. Use existing color helpers (GREEN for set, YELLOW for unset optional, RED for unset required). Required vars: FRESH_DOMAIN, FRESH_API_KEY, GITEA_URL, GITEA_TOKEN.
20
- Tests: Run `golem config` and verify output shows env status correctly
21
-
22
- ### [x] 1.2. Add config to main case statement and help text
23
- Files: bin/golem
24
- Notes: Add "config)" case to main(), add to cmd_help() under OTHER section
25
- Tests: `golem help` shows config command, `golem config` routes correctly
26
-
27
- ### [x] 1.3. Create /golem:config Claude command
28
- Files: commands/golem/config.md
29
- Notes: Follow pattern from status.md - use bash context blocks to read env status, display formatted output
30
- Tests: Run `/golem:config` in Claude and verify it shows configuration
31
-
32
- ---
33
-
34
- ## Stage 2: Doctor Command
35
- Commit: feat(cli): add golem doctor command to diagnose setup issues
36
- Depends on: Stage 1
37
-
38
- ### [x] 2.1. Add cmd_doctor function to bin/golem
39
- Files: bin/golem
40
- Notes: Implement environment checks (~/.golem dir, .env file, required vars), dependency checks (node, pnpm, git, golem-api with versions), installation checks (prompts, agents, commands, claude symlink). Track pass/fail count. Support --check-apis flag for optional API tests.
41
- Tests: Run `golem doctor` and verify all checks run and display correctly
42
-
43
- ### [x] 2.2. Add doctor to main case statement and help text
44
- Files: bin/golem
45
- Notes: Add "doctor)" case to main(), add to cmd_help() under OTHER section
46
- Tests: `golem help` shows doctor command, `golem doctor` routes correctly
47
-
48
- ### [x] 2.3. Create /golem:doctor Claude command
49
- Files: commands/golem/doctor.md
50
- Notes: Follow same pattern, run diagnostic checks and display results
51
- Tests: Run `/golem:doctor` in Claude and verify diagnostics display
52
-
53
- ---
54
-
55
- ## Notes
56
-
57
- - No external services needed - all local checks
58
- - Install script may need re-run after adding new commands to copy them to ~/.golem
59
- - Exit codes: config always 0 (informational), doctor 0 if all pass / 1 if any fail
package/bin/install.sh DELETED
@@ -1,69 +0,0 @@
1
- #!/usr/bin/env bash
2
- #
3
- # Install golem globally
4
- #
5
-
6
- set -euo pipefail
7
-
8
- GOLEM_HOME="${GOLEM_HOME:-$HOME/.golem}"
9
- SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
10
-
11
- echo "Installing golem to $GOLEM_HOME..."
12
-
13
- # Create directory structure
14
- mkdir -p "$GOLEM_HOME"/{commands,agents,prompts}
15
-
16
- # Copy commands
17
- cp -r "$SCRIPT_DIR/commands/golem" "$GOLEM_HOME/commands/"
18
- echo "✓ Installed Claude commands"
19
-
20
- # Copy agents and prompts
21
- cp "$SCRIPT_DIR/golem/agents/"*.md "$GOLEM_HOME/agents/"
22
- cp "$SCRIPT_DIR/golem/prompts/"*.md "$GOLEM_HOME/prompts/"
23
- echo "✓ Installed agents and prompts"
24
-
25
- # Build TypeScript
26
- echo "Building TypeScript..."
27
- cd "$SCRIPT_DIR"
28
- pnpm build
29
-
30
- # Link binaries
31
- mkdir -p "$HOME/.local/bin"
32
- ln -sf "$SCRIPT_DIR/bin/golem" "$HOME/.local/bin/golem"
33
- ln -sf "$SCRIPT_DIR/dist/cli/index.js" "$HOME/.local/bin/golem-api"
34
- chmod +x "$SCRIPT_DIR/dist/cli/index.js"
35
- echo "✓ Linked binaries to ~/.local/bin"
36
-
37
- # Create env template if not exists
38
- if [[ ! -f "$GOLEM_HOME/.env" ]]; then
39
- cat > "$GOLEM_HOME/.env" << 'EOF'
40
- # Freshworks/Freshservice
41
- FRESH_DOMAIN=yourcompany.freshservice.com
42
- FRESH_API_KEY=your_api_key_here
43
-
44
- # Gitea (on-prem)
45
- GITEA_URL=https://dev.pearlriverresort.com
46
- GITEA_TOKEN=your_token_here
47
- GITEA_ORG=CRDE
48
-
49
- # Default repo for issues (can be overridden per-project)
50
- GITEA_REPO=
51
- EOF
52
- echo "✓ Created $GOLEM_HOME/.env template"
53
- echo ""
54
- echo "⚠️ Edit $GOLEM_HOME/.env with your API credentials"
55
- fi
56
-
57
- # Setup Claude integration
58
- mkdir -p "$HOME/.claude/commands"
59
- ln -sf "$GOLEM_HOME/commands/golem" "$HOME/.claude/commands/golem" 2>/dev/null || true
60
- echo "✓ Linked Claude commands"
61
-
62
- echo ""
63
- echo "Installation complete!"
64
- echo ""
65
- echo "Make sure ~/.local/bin is in your PATH:"
66
- echo ' export PATH="$HOME/.local/bin:$PATH"'
67
- echo ""
68
- echo "Then configure your credentials:"
69
- echo " $GOLEM_HOME/.env"