mirror of
https://github.com/hanzoai/dev.git
synced 2026-10-25 03:32:32 +00:00
fix(branding): replace upstream logos, fix release version logic
- Replace EVERY CODE / CODE logo PNGs with Hanzo H logo and HANZO DEV banner - Fix release.yml version determination to use package.json as authoritative source instead of chasing highest npm version (was auto-bumping to 3.0.x) - Rename "Dark - Codex" theme to "Dark - Hanzo" in TUI and theme picker - Update warning messages from "Codex home" to "config home" - Handle "hanzo" segment in model name formatting - Remove "OpenAI Codex" from README highlights
This commit is contained in:
@@ -177,13 +177,13 @@ jobs:
|
||||
node-version: '20'
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
|
||||
- name: Determine next version (across all npm packages; ensure unique)
|
||||
- name: Determine next version (package.json is authoritative)
|
||||
id: version
|
||||
working-directory: codex-cli
|
||||
shell: bash
|
||||
run: |
|
||||
set -euo pipefail
|
||||
CURRENT_VERSION=$(node -p "require('./package.json').version")
|
||||
CANDIDATE=$(node -p "require('./package.json').version")
|
||||
PKGS=(
|
||||
"@hanzo/dev"
|
||||
"@hanzo/dev-darwin-arm64"
|
||||
@@ -192,21 +192,7 @@ jobs:
|
||||
"@hanzo/dev-linux-arm64-musl"
|
||||
"@hanzo/dev-win32-x64"
|
||||
)
|
||||
# Find the highest published version across all packages
|
||||
MAX_PUBLISHED="0.0.0"
|
||||
for p in "${PKGS[@]}"; do
|
||||
v=$(npm view "$p" version 2>/dev/null || echo "0.0.0")
|
||||
if [ "$(printf '%s\n%s\n' "$MAX_PUBLISHED" "$v" | sort -V | tail -n1)" != "$MAX_PUBLISHED" ]; then
|
||||
MAX_PUBLISHED="$v"
|
||||
fi
|
||||
done
|
||||
# Start with whichever is higher: CURRENT_VERSION or MAX_PUBLISHED
|
||||
CANDIDATE=$(printf '%s\n%s\n' "$CURRENT_VERSION" "$MAX_PUBLISHED" | sort -V | tail -n1)
|
||||
# If equal to MAX_PUBLISHED, bump patch once
|
||||
if [ "$CANDIDATE" = "$MAX_PUBLISHED" ]; then
|
||||
IFS='.' read -ra V <<< "$CANDIDATE"; CANDIDATE="${V[0]}.${V[1]}.$((${V[2]} + 1))"
|
||||
fi
|
||||
# Ensure candidate is globally unused; keep bumping until unique
|
||||
# Use package.json version as-is; only bump patch if already published
|
||||
while :; do
|
||||
used=false
|
||||
for p in "${PKGS[@]}"; do
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
- **Browser integration** — CDP support, headless browsing, screenshots captured inline.
|
||||
- **MCP support** — 260+ tools via Model Context Protocol. Extend with filesystem, databases, APIs, or custom servers.
|
||||
- **Skills system** — Dynamic tool injection with live reload. Define custom skills in `.agents/skills/`.
|
||||
- **Upstream sync** — Automated 30-minute polling merges OpenAI Codex improvements while preserving Hanzo features.
|
||||
- **Upstream sync** — Automated 30-minute polling merges upstream improvements while preserving Hanzo features.
|
||||
|
||||
[Full changelog](CHANGELOG.md) | [Release notes](docs/release-notes/RELEASE_NOTES.md)
|
||||
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 9.8 KiB After Width: | Height: | Size: 11 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 5.6 KiB After Width: | Height: | Size: 19 KiB |
@@ -192,7 +192,7 @@ impl ThemeSelectionView {
|
||||
),
|
||||
(
|
||||
ThemeName::DarkCodex,
|
||||
"Dark - Codex",
|
||||
"Dark - Hanzo",
|
||||
"Terminal-adaptive warm (amber)",
|
||||
),
|
||||
];
|
||||
|
||||
@@ -7707,8 +7707,8 @@ impl ChatWidget<'_> {
|
||||
/// Format model name with proper capitalization (e.g., "gpt-4" -> "GPT-4")
|
||||
fn format_model_name(&self, model_name: &str) -> String {
|
||||
fn format_segment(segment: &str) -> String {
|
||||
if segment.eq_ignore_ascii_case("codex") {
|
||||
return "Codex".to_string();
|
||||
if segment.eq_ignore_ascii_case("codex") || segment.eq_ignore_ascii_case("hanzo") {
|
||||
return segment.to_uppercase();
|
||||
}
|
||||
|
||||
let mut chars = segment.chars();
|
||||
@@ -24242,7 +24242,7 @@ Have we met every part of this goal and is there no further work to do?"#
|
||||
"Dark - Paper Light Pro".to_string()
|
||||
}
|
||||
hanzo_core::config_types::ThemeName::DarkCode => "Dark - Code".to_string(),
|
||||
hanzo_core::config_types::ThemeName::DarkCodex => "Dark - Codex".to_string(),
|
||||
hanzo_core::config_types::ThemeName::DarkCodex => "Dark - Hanzo".to_string(),
|
||||
hanzo_core::config_types::ThemeName::DarkMonochrome => "Dark - Monochrome".to_string(),
|
||||
hanzo_core::config_types::ThemeName::Custom => {
|
||||
let mut label =
|
||||
@@ -24410,7 +24410,7 @@ Have we met every part of this goal and is there no further work to do?"#
|
||||
tracing::info!("Persisted TUI spinner selection to config.toml");
|
||||
}
|
||||
} else {
|
||||
tracing::warn!("Could not locate Codex home to persist spinner selection");
|
||||
tracing::warn!("Could not locate config home to persist spinner selection");
|
||||
}
|
||||
|
||||
// Confirmation message (replaceable system notice)
|
||||
@@ -24676,7 +24676,7 @@ Have we met every part of this goal and is there no further work to do?"#
|
||||
}
|
||||
}
|
||||
Err(e) => {
|
||||
tracing::warn!("Could not locate Codex home to persist theme: {}", e);
|
||||
tracing::warn!("Could not locate config home to persist theme: {}", e);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -34210,7 +34210,7 @@ impl ChatWidget<'_> {
|
||||
}
|
||||
}
|
||||
} else {
|
||||
tracing::warn!("Could not locate Codex home to persist review auto resolve toggle");
|
||||
tracing::warn!("Could not locate config home to persist review auto resolve toggle");
|
||||
if enabled {
|
||||
"Auto Resolve enabled for this session."
|
||||
} else {
|
||||
@@ -34251,7 +34251,7 @@ impl ChatWidget<'_> {
|
||||
}
|
||||
}
|
||||
} else {
|
||||
tracing::warn!("Could not locate Codex home to persist auto review toggle");
|
||||
tracing::warn!("Could not locate config home to persist auto review toggle");
|
||||
if enabled {
|
||||
"Auto Review enabled for this session."
|
||||
} else {
|
||||
@@ -35072,7 +35072,7 @@ impl ChatWidget<'_> {
|
||||
}
|
||||
}
|
||||
} else {
|
||||
tracing::warn!("Could not locate Codex home to persist auto resolve attempts");
|
||||
tracing::warn!("Could not locate config home to persist auto resolve attempts");
|
||||
format!("Max re-reviews set to {} for this session.", limit.get())
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user