localcode_quick.sh
1 #!/usr/bin/env bash 2 # Quick wrapper for LocalCode - simplified session management 3 # Usage: source this file, then use: lc_start, lc_query, lc_end 4 5 SESSIONS_DIR="${HOME}/.localcode/sessions" 6 7 # Start session and store in env variable 8 lc_start() { 9 local project_path="${1:-.}" 10 export LOCALCODE_SESSION=$(./scripts/llm/localcode_session.sh start "$project_path" 2>/dev/null | tail -1) 11 echo "✓ Session started: $LOCALCODE_SESSION" 12 echo " Use: lc_query \"your question\"" 13 } 14 15 # Query current session 16 lc_query() { 17 if [[ -z "$LOCALCODE_SESSION" ]]; then 18 echo "✗ No active session. Run: lc_start" >&2 19 return 1 20 fi 21 22 # Set timeout via env var (default 180 seconds / 3 minutes for local LLMs) 23 export LLM_TIMEOUT="${LLM_TIMEOUT:-180}" 24 25 ./scripts/llm/localcode_query.sh "$LOCALCODE_SESSION" "$@" 26 } 27 28 # Interactive mode 29 lc_interactive() { 30 if [[ -z "$LOCALCODE_SESSION" ]]; then 31 echo "✗ No active session. Run: lc_start" >&2 32 return 1 33 fi 34 35 ./scripts/llm/localcode_query.sh "$LOCALCODE_SESSION" --interactive 36 } 37 38 # End session 39 lc_end() { 40 if [[ -z "$LOCALCODE_SESSION" ]]; then 41 echo "✗ No active session" >&2 42 return 1 43 fi 44 45 ./scripts/llm/localcode_session.sh end "$LOCALCODE_SESSION" 2>/dev/null 46 echo "✓ Session ended: $LOCALCODE_SESSION" 47 unset LOCALCODE_SESSION 48 } 49 50 # List sessions 51 lc_list() { 52 ./scripts/llm/localcode_session.sh list 53 } 54 55 # Show current session 56 lc_show() { 57 if [[ -z "$LOCALCODE_SESSION" ]]; then 58 echo "✗ No active session" >&2 59 return 1 60 fi 61 62 ./scripts/llm/localcode_session.sh show "$LOCALCODE_SESSION" 63 } 64 65 # Export functions 66 export -f lc_start 67 export -f lc_query 68 export -f lc_interactive 69 export -f lc_end 70 export -f lc_list 71 export -f lc_show 72 73 echo "LocalCode helper functions loaded:" 74 echo " lc_start [path] - Start new session" 75 echo " lc_query \"question\" - Query current session" 76 echo " lc_interactive - Interactive mode" 77 echo " lc_end - End current session" 78 echo " lc_list - List all sessions" 79 echo " lc_show - Show current session" 80 echo "" 81 echo "Environment variables:" 82 echo " LLM_TIMEOUT=180 - Query timeout (default: 180 seconds / 3 minutes)" 83 echo " LLM_MODEL - Model to use (default: deepseek-coder:6.7b)"