summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile64
-rwxr-xr-xscripts/create_alias.sh38
2 files changed, 102 insertions, 0 deletions
diff --git a/Makefile b/Makefile
new file mode 100644
index 00000000..ad561656
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,64 @@
+# Makefile for gemini-cli
+
+.PHONY: help install build build-sandbox build-all test lint format preflight clean start debug release run-npx create-alias
+
+help:
+ @echo "Makefile for gemini-cli"
+ @echo ""
+ @echo "Usage:"
+ @echo " make install - Install npm dependencies"
+ @echo " make build - Build the entire project"
+ @echo " make build-sandbox - Build the sandbox container"
+ @echo " make build-all - Build the project and the sandbox"
+ @echo " make test - Run the test suite"
+ @echo " make lint - Lint the code"
+ @echo " make format - Format the code"
+ @echo " make preflight - Run formatting, linting, and tests"
+ @echo " make clean - Remove generated files"
+ @echo " make start - Start the Gemini CLI"
+ @echo " make debug - Start the Gemini CLI in debug mode"
+ @echo " make release - Publish a new release"
+ @echo " make run-npx - Run the CLI using npx (for testing the published package)"
+ @echo " make create-alias - Create a 'gemini' alias for your shell"
+
+install:
+ npm install
+
+build:
+ npm run build
+
+build-sandbox:
+ npm run build:sandbox
+
+build-all:
+ npm run build:all
+
+test:
+ npm run test
+
+lint:
+ npm run lint
+
+format:
+ npm run format
+
+preflight:
+ npm run preflight
+
+clean:
+ npm run clean
+
+start:
+ npm run start
+
+debug:
+ npm run debug
+
+release:
+ npm run publish:release
+
+run-npx:
+ npx https://github.com/google-gemini/gemini-cli#early-access
+
+create-alias:
+ scripts/create_alias.sh
diff --git a/scripts/create_alias.sh b/scripts/create_alias.sh
new file mode 100755
index 00000000..599078b9
--- /dev/null
+++ b/scripts/create_alias.sh
@@ -0,0 +1,38 @@
+#!/bin/bash
+
+# This script creates an alias for the Gemini CLI
+
+# Determine the project directory
+PROJECT_DIR=$(cd "$(dirname "$0")/.." && pwd)
+ALIAS_COMMAND="alias gemini='$PROJECT_DIR/scripts/start.sh'"
+
+# Detect shell and set config file path
+if [[ "$SHELL" == *"/bash" ]]; then
+ CONFIG_FILE="$HOME/.bashrc"
+elif [[ "$SHELL" == *"/zsh" ]]; then
+ CONFIG_FILE="$HOME/.zshrc"
+else
+ echo "Unsupported shell. Only bash and zsh are supported."
+ exit 1
+fi
+
+echo "This script will add the following alias to your shell configuration file ($CONFIG_FILE):"
+echo " $ALIAS_COMMAND"
+echo ""
+
+# Check if the alias already exists
+if grep -q "alias gemini=" "$CONFIG_FILE"; then
+ echo "A 'gemini' alias already exists in $CONFIG_FILE. No changes were made."
+ exit 0
+fi
+
+read -p "Do you want to proceed? (y/n) " -n 1 -r
+echo ""
+if [[ $REPLY =~ ^[Yy]$ ]]; then
+ echo "$ALIAS_COMMAND" >> "$CONFIG_FILE"
+ echo ""
+ echo "Alias added to $CONFIG_FILE."
+ echo "Please run 'source $CONFIG_FILE' or open a new terminal to use the 'gemini' command."
+else
+ echo "Aborted. No changes were made."
+fi