diff --git a/.claude/hooks/post-write.sh b/.claude/hooks/post-write.sh deleted file mode 100644 index 30061e9a..00000000 --- a/.claude/hooks/post-write.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/bash -# PostToolUse Hook for Write - Logs file writes and can trigger actions - -# Extract file path from parameters -FILE_PATH="${CLAUDE_TOOL_PARAMETERS:-Unknown file}" - -# Log the write operation -echo "[$(date '+%Y-%m-%d %H:%M:%S')] File written: $FILE_PATH" >> .claude/logs/writes.log - -# Optional: Auto-format specific file types -if [[ "$FILE_PATH" =~ \.(js|ts|jsx|tsx)$ ]]; then - # Uncomment to enable auto-formatting with prettier - # npx prettier --write "$FILE_PATH" 2>/dev/null || true - echo " -> JavaScript/TypeScript file detected" >> .claude/logs/writes.log -fi - -if [[ "$FILE_PATH" =~ \.(py)$ ]]; then - # Uncomment to enable auto-formatting with black - # black "$FILE_PATH" 2>/dev/null || true - echo " -> Python file detected" >> .claude/logs/writes.log -fi diff --git a/.claude/hooks/pre-bash.sh b/.claude/hooks/pre-bash.sh deleted file mode 100644 index f0f3db83..00000000 --- a/.claude/hooks/pre-bash.sh +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/bash -# PreToolUse Hook for Bash - Logs bash commands before execution - -# Extract the bash command from CLAUDE_TOOL_PARAMETERS if available -COMMAND="${CLAUDE_TOOL_PARAMETERS:-Unknown command}" - -# Log the command -echo "[$(date '+%Y-%m-%d %H:%M:%S')] Executing: $COMMAND" >> .claude/logs/bash.log - -# Optional: Add safety checks -# Example: Block dangerous commands -if echo "$COMMAND" | grep -qE "rm -rf /|mkfs|dd if="; then - echo "WARNING: Potentially dangerous command blocked!" >&2 - exit 1 -fi diff --git a/.claude/hooks/session-end.sh b/.claude/hooks/session-end.sh deleted file mode 100644 index ca410a5d..00000000 --- a/.claude/hooks/session-end.sh +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/bash -# SessionEnd Hook - Runs when a Claude Code session ends - -# Log session end with timestamp -echo "Session Ended: $(date '+%Y-%m-%d %H:%M:%S')" >> .claude/logs/session.log -echo "" >> .claude/logs/session.log - -# Optional: Clean up temporary files -# rm -f .claude/tmp/* - -echo "Session ended. Logs saved to .claude/logs/session.log" diff --git a/.claude/hooks/session-start.sh b/.claude/hooks/session-start.sh deleted file mode 100644 index 3267ba67..00000000 --- a/.claude/hooks/session-start.sh +++ /dev/null @@ -1,50 +0,0 @@ -#!/bin/bash -# SessionStart Hook - Runs when a new Claude Code session starts - -# Create log directory if it doesn't exist -mkdir -p .claude/logs - -# Log session start with timestamp -echo "========================================" >> .claude/logs/session.log -echo "Session Started: $(date '+%Y-%m-%d %H:%M:%S')" >> .claude/logs/session.log -echo "Working Directory: $(pwd)" >> .claude/logs/session.log -echo "User: $(whoami)" >> .claude/logs/session.log -echo "========================================" >> .claude/logs/session.log - -# Output session initialization message to Claude -cat << 'EOF' -🚀 **New Session Initialized - Foundry VTT Development Environment** - -📋 **MANDATORY REMINDERS FOR THIS SESSION**: - -1. ✅ **CLAUDE.md** has been loaded with project instructions -2. ✅ **8 MCP Servers** are available: serena, sequential-thinking, context7, memory, fetch, windows-mcp, playwright, database-server -3. ✅ **Specialized Agents** available: Explore, test-engineer, code-reviewer, refactoring-specialist, debugger, architect, documentation-writer, security-analyst - -⚠️ **CRITICAL REQUIREMENTS** - You MUST follow these for EVERY task: - -**At the START of EVERY task, provide a Tooling Strategy Decision:** -- **Agents**: State if using (which one) or not using (with reason) -- **Slash Commands**: State if using (which one) or not using (with reason) -- **MCP Servers**: State if using (which ones) or not using (with reason) -- **Approach**: Brief strategy overview - -**At the END of EVERY task, provide a Task Completion Summary:** -- What was done -- Which features were used (Agents, Slash Commands, MCP Servers, Core Tools) -- Files modified -- Efficiency notes - -📖 **See documentation**: -- **CLAUDE.md**: Full project documentation (automatically loaded) -- **.claude/SESSION_INSTRUCTIONS.md**: Quick reference for mandatory policies -- "Mandatory Tooling Usage Policy" (CLAUDE.md lines 545-610) -- "Task Initiation Requirements" (CLAUDE.md lines 905-920) -- "Task Completion Status Messages" (CLAUDE.md lines 925-945) - -🎯 **This Session's Focus**: Foundry VTT v11.315 + PF1e v10.8 macro development and debugging - -💡 **Tip**: You can read .claude/SESSION_INSTRUCTIONS.md anytime for a quick reminder of mandatory policies. -EOF - -# Session initialized successfully diff --git a/.claude/hooks/stop.sh b/.claude/hooks/stop.sh deleted file mode 100644 index 82e91373..00000000 --- a/.claude/hooks/stop.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/bash -# Stop hook - Executed when Claude Code finishes responding -# Purpose: Log completion of tasks - -# Create logs directory if it doesn't exist -mkdir -p .claude/logs - -# Log the stop event -echo "[$(date)] Claude finished responding" >> .claude/logs/session.log - -# Note: The actual summary generation is done by Claude in the response -# This hook just logs the event for tracking purposes diff --git a/.claude/hooks/user-prompt-submit.sh b/.claude/hooks/user-prompt-submit.sh deleted file mode 100644 index c37c0aa2..00000000 --- a/.claude/hooks/user-prompt-submit.sh +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/bash -# UserPromptSubmit Hook - Runs when user submits a prompt - -# Log prompt submission (without actual content for privacy) -echo "[$(date '+%Y-%m-%d %H:%M:%S')] User prompt submitted" >> .claude/logs/session.log - -# Optional: Show notification (requires notify-send on Linux or similar) -# notify-send "Claude Code" "Processing your request..." 2>/dev/null || true - -# Optional: Track usage statistics -PROMPT_COUNT_FILE=".claude/logs/prompt_count.txt" -if [ -f "$PROMPT_COUNT_FILE" ]; then - COUNT=$(cat "$PROMPT_COUNT_FILE") - COUNT=$((COUNT + 1)) -else - COUNT=1 -fi -echo "$COUNT" > "$PROMPT_COUNT_FILE" diff --git a/.serena/project.yml b/.serena/project.yml index 4e907558..ef47c944 100644 --- a/.serena/project.yml +++ b/.serena/project.yml @@ -1,9 +1,3 @@ -# language of the project (csharp, python, rust, java, typescript, go, cpp, or ruby) -# * For C, use cpp -# * For JavaScript, use typescript -# Special requirements: -# * csharp: Requires the presence of a .sln file in the project folder. -language: bash # the encoding used by text files in the project # For a list of possible encodings, see https://docs.python.org/3.11/library/codecs.html#standard-encodings @@ -67,8 +61,57 @@ excluded_tools: [] # initial prompt for the project. It will always be given to the LLM upon activating the project # (contrary to the memories, which are loaded on demand). initial_prompt: "" - +# the name by which the project can be referenced within Serena project_name: "Claude Code Setup" # Enable tool usage statistics collection for the web dashboard record_tool_usage_stats: true + +# list of mode names to that are always to be included in the set of active modes +# The full set of modes to be activated is base_modes + default_modes. +# If the setting is undefined, the base_modes from the global configuration (serena_config.yml) apply. +# Otherwise, this setting overrides the global configuration. +# Set this to [] to disable base modes for this project. +# Set this to a list of mode names to always include the respective modes for this project. +base_modes: + +# list of mode names that are to be activated by default. +# The full set of modes to be activated is base_modes + default_modes. +# If the setting is undefined, the default_modes from the global configuration (serena_config.yml) apply. +# Otherwise, this overrides the setting from the global configuration (serena_config.yml). +# This setting can, in turn, be overridden by CLI parameters (--mode). +default_modes: + +# list of tools to include that would otherwise be disabled (particularly optional tools that are disabled by default) +included_optional_tools: [] + +# fixed set of tools to use as the base tool set (if non-empty), replacing Serena's default set of tools. +# This cannot be combined with non-empty excluded_tools or included_optional_tools. +fixed_tools: [] + + +# list of languages for which language servers are started; choose from: +# al bash clojure cpp csharp +# csharp_omnisharp dart elixir elm erlang +# fortran fsharp go groovy haskell +# java julia kotlin lua markdown +# matlab nix pascal perl php +# powershell python python_jedi r rego +# ruby ruby_solargraph rust scala swift +# terraform toml typescript typescript_vts vue +# yaml zig +# (This list may be outdated. For the current list, see values of Language enum here: +# https://github.com/oraios/serena/blob/main/src/solidlsp/ls_config.py +# For some languages, there are alternative language servers, e.g. csharp_omnisharp, ruby_solargraph.) +# Note: +# - For C, use cpp +# - For JavaScript, use typescript +# - For Free Pascal/Lazarus, use pascal +# Special requirements: +# Some languages require additional setup/installations. +# See here for details: https://oraios.github.io/serena/01-about/020_programming-languages.html#language-servers +# When using multiple languages, the first language server that supports a given file will be used for that file. +# The first language is the default language and the respective language server will be used as a fallback. +# Note that when using the JetBrains backend, language servers are not used and this list is correspondingly ignored. +languages: +- bash diff --git a/src/FoundryVTT-11.315/foundryvtt.7z b/src/FoundryVTT-11.315/foundryvtt.7z deleted file mode 100644 index 2a45a9c1..00000000 Binary files a/src/FoundryVTT-11.315/foundryvtt.7z and /dev/null differ