Major Changes: - Rename repository from opencode-agents to OpenAgents - Remove all hardcoded model specifications (now model-agnostic) - Fix documentation: profile names, component counts, add Business profile - Add future plans note for other AI coding tools Repository Rename: - Update all URLs to github.com/darrenhinde/OpenAgents - Update git remote, README, install scripts, documentation - 15 files updated with new repository name Model-Agnostic Framework: - Remove model specifications from 6 agent files - Framework now works with any AI provider (Claude, GPT, Gemini, local models) - Users control model selection via OpenCode CLI settings Documentation Fixes: - Correct profile name: Core → Essential - Add missing Business profile documentation - Fix component counts: Developer (19), Advanced (32) - Document all 5 profiles with accurate descriptions Future Plans: - Add note about support for other AI tools (Cursor, Claude Code, etc.) - Clear focus on stabilizing OpenCode integration first This makes OpenAgents a truly universal, model-agnostic framework accessible to all users regardless of their AI provider preference.
83 lines
2.6 KiB
Bash
Executable file
83 lines
2.6 KiB
Bash
Executable file
#!/usr/bin/env bash
|
||
|
||
#############################################################################
|
||
# OpenAgents Updater
|
||
# Updates existing OpenCode components to latest versions
|
||
#############################################################################
|
||
|
||
set -e
|
||
|
||
# Colors
|
||
GREEN='\033[0;32m'
|
||
YELLOW='\033[1;33m'
|
||
BLUE='\033[0;34m'
|
||
CYAN='\033[0;36m'
|
||
BOLD='\033[1m'
|
||
NC='\033[0m'
|
||
|
||
REPO_URL="https://raw.githubusercontent.com/darrenhinde/OpenAgents/main"
|
||
INSTALL_DIR=".opencode"
|
||
|
||
print_success() { echo -e "${GREEN}✓${NC} $1"; }
|
||
print_info() { echo -e "${BLUE}ℹ${NC} $1"; }
|
||
print_step() { echo -e "\n${CYAN}${BOLD}▶${NC} $1\n"; }
|
||
|
||
print_header() {
|
||
echo -e "${CYAN}${BOLD}"
|
||
echo "╔════════════════════════════════════════════════════════════════╗"
|
||
echo "║ ║"
|
||
echo "║ OpenAgents Updater v1.0.0 ║"
|
||
echo "║ ║"
|
||
echo "╚════════════════════════════════════════════════════════════════╝"
|
||
echo -e "${NC}"
|
||
}
|
||
|
||
update_component() {
|
||
local path=$1
|
||
local url="${REPO_URL}/${path}"
|
||
|
||
if [ ! -f "$path" ]; then
|
||
print_info "Skipping $path (not installed)"
|
||
return
|
||
fi
|
||
|
||
# Backup existing file
|
||
cp "$path" "${path}.backup"
|
||
|
||
if curl -fsSL "$url" -o "$path"; then
|
||
print_success "Updated $path"
|
||
rm "${path}.backup"
|
||
else
|
||
print_info "Failed to update $path, restoring backup"
|
||
mv "${path}.backup" "$path"
|
||
fi
|
||
}
|
||
|
||
main() {
|
||
print_header
|
||
|
||
if [ ! -d "$INSTALL_DIR" ]; then
|
||
echo "Error: $INSTALL_DIR directory not found"
|
||
echo "Run install.sh first to install components"
|
||
exit 1
|
||
fi
|
||
|
||
print_step "Updating components..."
|
||
|
||
# Update all markdown files in .opencode
|
||
while IFS= read -r -d '' file; do
|
||
update_component "$file"
|
||
done < <(find "$INSTALL_DIR" -name "*.md" -type f -print0)
|
||
|
||
# Update TypeScript files
|
||
while IFS= read -r -d '' file; do
|
||
update_component "$file"
|
||
done < <(find "$INSTALL_DIR" -name "*.ts" -type f -not -path "*/node_modules/*" -print0)
|
||
|
||
# Update config files
|
||
[ -f "env.example" ] && update_component "env.example"
|
||
|
||
print_success "Update complete!"
|
||
}
|
||
|
||
main "$@"
|