Skip to content
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -41,3 +41,4 @@ configs/ccs/cliproxy/bin/plus
configs/amp/skills/ralph/archive
.planning/codebase
configs/ccs/cliproxy/cliproxy
configs/ccs/cliproxy/auth
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -366,7 +366,7 @@ Real-world projects built using these AI tools:
| [Keybinder](https://github.com/jellydn/keybinder) | macOS app for managing skhd keyboard shortcuts | Claude + spec-kit |
| [SealCode](https://github.com/jellydn/vscode-seal-code) | VS Code extension for AI-powered code review | Amp + Ralph |
| [Ralph](https://github.com/jellydn/ralph) | Autonomous AI agent loop for PRD-driven development | TypeScript |
| [AI CLI Switcher](https://github.com/jellydn/ai-cli-switcher) | Fast launcher for switching between AI coding assistants | TypeScript |
| [AI Launcher](https://github.com/jellydn/ai-launcher) | Fast launcher for switching between AI coding assistants | TypeScript |
| [Tiny Coding Agent](https://github.com/jellydn/tiny-coding-agent) | Minimal coding agent focused on simplicity | TypeScript |

📖 **[Learning Stories](docs/learning-stories.md)** - Detailed notes on development approaches, key takeaways, and tools I've tried.
Expand Down Expand Up @@ -745,17 +745,17 @@ Configure MCP servers in `~/.gemini/settings.json` to extend functionality:

---

## 🔄 AI CLI Switcher (Optional)
## 🔄 AI Launcher (Optional)

Fast launcher for switching between AI coding assistants. [Homepage](https://github.com/jellydn/ai-cli-switcher)
Fast launcher for switching between AI coding assistants. [Homepage](https://github.com/jellydn/ai-launcher)

<details>
<summary><strong>Installation & Configuration</strong></summary>

### Installation

```bash
curl -fsSL https://raw.githubusercontent.com/jellydn/ai-cli-switcher/main/install.sh | sh
curl -fsSL https://raw.githubusercontent.com/jellydn/ai-launcher/main/install.sh | sh
```

### Configuration
Expand Down
2 changes: 1 addition & 1 deletion cli.sh
Original file line number Diff line number Diff line change
Expand Up @@ -433,7 +433,7 @@ install_ai_switcher() {
if command -v ai-switcher &>/dev/null; then
log_warning "ai-switcher is already installed"
else
execute_installer "https://raw.githubusercontent.com/jellydn/ai-cli-switcher/main/install.sh" "" "ai-switcher"
execute_installer "https://raw.githubusercontent.com/jellydn/ai-launcher/main/install.sh" "" "ai-switcher"
log_success "ai-switcher installed"
fi
}
Expand Down
7 changes: 7 additions & 0 deletions configs/ai-switcher/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,13 @@
"aliases": ["c"],
"promptCommand": "claude --permission-mode plan -p"
},
{
"name": "codex",
"command": "codex",
"description": "OpenAI Codex CLI",
"aliases": ["co"],
"promptCommand": "codex exec"
},
{
"name": "opencode",
"command": "opencode",
Expand Down
5 changes: 4 additions & 1 deletion configs/codex/config.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
[features]
unified_exec = true
shell_snapshot = true
web_search_request = true
apps = true
steer = true
personality = true
Comment on lines +4 to +6

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

🌐 Web query:

Codex CLI config.toml feature flags apps steer personality

💡 Result:

Codex CLI config.toml (where things go)

Config file location: ~/.codex/config.toml (optionally project-scoped in .codex/config.toml for trusted projects). [1]

1) Feature flags

Codex “feature flags” live under the [features] table (aka features.* keys). Examples include features.shell_snapshot, features.unified_exec, and the legacy features.web_search_request toggle. [1][2]
Codex’s web search is explicitly opt-in via config (or --search). [3]

2) “Apps” / app integrations

There isn’t an [apps] table in Codex’s config.toml reference. What OpenAI calls “apps” in the Codex ecosystem is usually one of:

  • Codex app-server (for building rich clients/integrations like an IDE extension). This is a separate codex app-server protocol surface, not a config.toml section named [apps]. [4]
  • ChatGPT Apps SDK (a different product area; not configured via Codex CLI config.toml). [2]

3) “Steer” and “personality”

These are not Codex config.toml keys. In Codex, you steer behavior primarily through instructions, e.g.:

  • developer_instructions (inline string injected into the session) [1]
  • model_instructions_file (instructions loaded from a file) [1]
  • AGENTS.md (project instructions; commonly used to shape behavior) [2]

Conceptually, “personality” is a prompting/instructions pattern (tone/style defaults) rather than a Codex CLI config flag. [5]

Sources: [1] https://developers.openai.com/codex/config-reference • [2] https://developers.openai.com/codex/config-basic/ • [3] https://developers.openai.com/codex/cli/features • [4] https://developers.openai.com/codex/app-server • [5] https://developers.openai.com/cookbook/examples/gpt-5/prompt_personalities/


🏁 Script executed:

# Search the codebase for references to these feature toggles
rg "(apps|steer|personality)" --type toml --type json --type py --type js -A 2 -B 2

Repository: jellydn/my-ai-tools

Length of output: 357


🏁 Script executed:

# Check the full context of the config file to understand the changes
cat -n configs/codex/config.toml

Repository: jellydn/my-ai-tools

Length of output: 845


🏁 Script executed:

# Search for any documentation or comments about these features
rg "apps.*true|steer.*true|personality.*true" -A 3 -B 3

Repository: jellydn/my-ai-tools

Length of output: 442


Remove invalid Codex CLI feature flags.

The keys apps, steer, and personality are not valid Codex CLI config.toml feature flags according to the official Codex CLI documentation. Valid feature flags are defined under [features] and include shell_snapshot, unified_exec, and the legacy web_search_request. These invalid keys will be unrecognized by Codex CLI and should be removed or replaced with valid configuration options.

🤖 Prompt for AI Agents
In `@configs/codex/config.toml` around lines 4 - 6, Remove the invalid top-level
feature flags `apps`, `steer`, and `personality` from the config file and
instead define valid Codex CLI feature flags under the [features] table; update
the file by deleting those three keys and, if needed, add valid flags such as
`shell_snapshot`, `unified_exec`, or the legacy `web_search_request` under
`[features]` to reflect supported configuration options.


[sandbox_workspace_write]
network_access = true
Expand All @@ -26,3 +28,4 @@ args = ["-y", "@modelcontextprotocol/server-sequential-thinking"]
[mcp_servers.qmd]
command = "qmd"
args = ["mcp"]

4 changes: 2 additions & 2 deletions docs/learning-stories.md
Original file line number Diff line number Diff line change
Expand Up @@ -70,11 +70,11 @@ Minimal Ralph implementation: PRD → task decomposition → autonomous executio

---

## AI CLI Switcher
## AI Launcher

**Fast launcher for switching between AI coding assistants.**

- **Repository:** [jellydn/ai-cli-switcher](https://github.com/jellydn/ai-cli-switcher)
- **Repository:** [jellydn/ai-launcher](https://github.com/jellydn/ai-launcher)

Fuzzy search interface for Claude Code, OpenCode, Amp, etc. Quick switching without managing multiple terminals.

Expand Down