Skip to content

feat(cli): Add styled splash screen with ASCII art logo#22

Merged
MarvelNwachukwu merged 2 commits intomainfrom
feat/cli-splash-screen
Feb 19, 2026
Merged

feat(cli): Add styled splash screen with ASCII art logo#22
MarvelNwachukwu merged 2 commits intomainfrom
feat/cli-splash-screen

Conversation

@MarvelNwachukwu
Copy link
Copy Markdown
Contributor

Summary

  • Replaces plain-text help output with a styled splash screen matching the ADK-TS CLI aesthetic
  • Magenta ASCII art "ADK CLAW" logo, tagline, version, colored command list, and footer links
  • Running adk-claw with no args now shows the splash instead of auto-running init (adk-claw init still works)

Test plan

  • Run pnpm dev:cli (no args) — should display splash screen
  • Run pnpm dev:cli --help — should display splash screen
  • Run pnpm dev:cli init — should run setup wizard as before
  • Run pnpm dev:cli --version — should print version
  • Run pnpm build && pnpm cli — verify built mode works

Replace plain-text help with a styled splash screen matching the ADK-TS
CLI aesthetic. Shows magenta ASCII art "ADK CLAW" logo, tagline, version,
commands, and links. Running with no args now shows the splash instead of
auto-running init.
@gemini-code-assist
Copy link
Copy Markdown

Summary of Changes

Hello @MarvelNwachukwu, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request significantly upgrades the command-line interface's initial user interaction by introducing a rich, styled splash screen. This change improves the aesthetic appeal and clarity of the CLI's entry point, making it more user-friendly and consistent with the project's branding. It refactors how help and version information are presented, centralizing display logic and enhancing the overall first impression for users.

Highlights

  • Enhanced CLI User Experience: Replaced the previous plain-text help output with a visually appealing, styled splash screen for the adk-claw CLI.
  • New Splash Screen Features: The new splash screen includes a magenta ASCII art 'ADK CLAW' logo, a tagline, the current version, a colored list of available commands, and helpful footer links.
  • Default Command Behavior Change: Executing adk-claw without any arguments now displays the new splash screen instead of automatically running the init command. The adk-claw init command still functions as before.
  • Simplified Version Output: The --version flag now directly prints the version string, removing the need for a separate printVersion function.
Changelog
  • src/cli/index.ts
    • Added picocolors import for colored console output.
    • Defined VERSION constant and LOGO ASCII art string.
    • Implemented printSplash function to display the new styled splash screen.
    • Modified the main function's switch statement to call printSplash when no command is provided, for help flags, and for unknown commands.
    • Updated the version command case to directly log the version string.
    • Removed the printHelp and printVersion utility functions, as their functionality is now integrated into printSplash or handled directly.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

The pull request successfully introduces a styled splash screen for the CLI, enhancing the user experience and consolidating help and version output. The change in default behavior to display the splash screen instead of auto-running init is a clear improvement, aligning with common CLI patterns. The new splash screen provides a more engaging and informative initial interaction for users. My feedback primarily focuses on improving maintainability by centralizing the version number definition to prevent potential inconsistencies.

src/cli/index.ts Outdated
const args = process.argv.slice(2);
const command = args[0];

const VERSION = "0.1.0";
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

Hardcoding the VERSION constant here can lead to inconsistencies if the project's version in package.json is updated but this file is not. It's best practice to derive the version directly from package.json to maintain a single source of truth and ensure all parts of the application reflect the correct version.

import { createRequire } from 'module';
const require = createRequire(import.meta.url);
const { version: CLI_VERSION } = require('../../package.json');

case "--version":
case "-v":
printVersion();
console.log(`adk-claw v${VERSION}`);
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

Following the suggestion to derive the version from package.json, this line should use the imported version constant (CLI_VERSION) instead of the hardcoded VERSION constant.

console.log(`adk-claw v${CLI_VERSION}`);

@MarvelNwachukwu MarvelNwachukwu merged commit 64d14d7 into main Feb 19, 2026
1 check failed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant