Skip to content

Commit d07902f

Browse files
committed
Add ASCII welcome art
1 parent 38dc1c4 commit d07902f

File tree

5 files changed

+51
-15
lines changed

5 files changed

+51
-15
lines changed

src/aieng_bot/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
FailureType,
1717
PRContext,
1818
)
19+
from .config import get_model_name
1920
from .metrics import MetricsCollector
2021
from .observability import AgentExecutionTracer, create_tracer_from_env
2122

@@ -33,5 +34,6 @@
3334
"RepoQueue",
3435
"PRQueueItem",
3536
"PRStatus",
37+
"get_model_name",
3638
"__version__",
3739
]

src/aieng_bot/_cli/main.py

Lines changed: 28 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
from rich.console import Console
77
from rich.text import Text
88

9+
from ..config import get_model_name
910
from ..utils.logging import get_console
1011
from .commands.classify import classify
1112
from .commands.fix import fix
@@ -24,20 +25,33 @@ def print_banner(console: Console) -> None:
2425
if os.environ.get("AIENG_BOT_NO_BANNER"):
2526
return
2627

27-
banner = Text()
28-
banner.append(" ╔══════════════════════════════════════════╗\n", style="bold cyan")
29-
banner.append(" ║ ║\n", style="bold cyan")
30-
banner.append(" ║ ", style="bold cyan")
31-
banner.append("🤖 AI Engineering Bot", style="bold white")
32-
banner.append(" ║\n", style="bold cyan")
33-
banner.append(" ║ ", style="bold cyan")
34-
banner.append("Automated PR Maintenance", style="cyan")
35-
banner.append(" ║\n", style="bold cyan")
36-
banner.append(" ║ ║\n", style="bold cyan")
37-
banner.append(" ╚══════════════════════════════════════════╝", style="bold cyan")
38-
39-
console.print(banner)
40-
console.print(" Vector Institute AI Engineering\n", style="dim italic")
28+
version_str = get_version()
29+
model_name = get_model_name()
30+
31+
# Sleek robot ASCII art with antennae
32+
line0 = Text()
33+
line0.append(" ◦ ◦ ", style="#EB088A bold")
34+
line0.append(" aieng-bot ", style="white bold")
35+
line0.append(f"v{version_str}", style="bright_black")
36+
37+
line1 = Text()
38+
line1.append(" ┌─────┐ ", style="#EB088A bold")
39+
40+
line2 = Text()
41+
line2.append(" │ ◉ ◉ │ ", style="#EB088A bold")
42+
line2.append(" ", style="")
43+
line2.append(model_name, style="cyan")
44+
45+
line3 = Text()
46+
line3.append(" └──‿──┘ ", style="#EB088A bold")
47+
line3.append(" Vector Institute AI Engineering", style="bright_black")
48+
49+
console.print()
50+
console.print(line0)
51+
console.print(line1)
52+
console.print(line2)
53+
console.print(line3)
54+
console.print()
4155

4256

4357
def version_callback(ctx: click.Context, param: click.Parameter, value: bool) -> None:

src/aieng_bot/_cli/utils.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ def get_version() -> str:
1818
1919
"""
2020
try:
21-
return version("aieng-bot-maintain")
21+
return version("aieng-bot")
2222
except PackageNotFoundError:
2323
return "unknown"
2424

src/aieng_bot/agent_fixer/fixer.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66

77
from claude_agent_sdk import ClaudeAgentOptions, query
88

9+
from ..config import get_model_name
910
from ..observability import AgentExecutionTracer
1011
from ..utils.logging import log_error, log_info, log_success
1112
from .models import AgentFixRequest, AgentFixResult
@@ -75,6 +76,7 @@ async def apply_fixes(self, request: AgentFixRequest) -> AgentFixResult:
7576
permission_mode="acceptEdits",
7677
cwd=request.cwd,
7778
setting_sources=["project"], # Load .claude/skills/
79+
model=get_model_name(),
7880
)
7981

8082
# Run agent with tracing

src/aieng_bot/config.py

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
"""Configuration for aieng-bot."""
2+
3+
import os
4+
5+
6+
def get_model_name() -> str:
7+
"""Get the Claude model name used by the agent.
8+
9+
Returns the model configured via CLAUDE_MODEL environment variable,
10+
or defaults to the latest Claude Sonnet 4.5 model.
11+
12+
Returns
13+
-------
14+
str
15+
The full model identifier (e.g., "claude-sonnet-4.5-20250929").
16+
17+
"""
18+
return os.getenv("CLAUDE_MODEL", "claude-sonnet-4.5-20250929")

0 commit comments

Comments
 (0)