Skip to content
Merged
Show file tree
Hide file tree
Changes from all 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
3 changes: 3 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,9 @@ jobs:
jq empty "$file"
done < <(git ls-files '*.json')

- name: Check Cortex shell integration
run: ./scripts/check-cortex-shell-integration.sh

- name: Validate TOML configs
shell: bash
run: |
Expand Down
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -147,6 +147,7 @@ Editá `local/env.zsh` (gitignored) para configurar:
- `CORTEX_HOME` — raíz canónica de cortex, por defecto `~/.cortex`
- `CORTEX_ROOT` — repo principal cortex, por defecto `~/.cortex/cortex`
- `CORTEX_DOTFILES_DIR` — repo dotfiles, por defecto `~/.cortex/cortex-dotfiles`
- `CORTEX_SHELL_INTEGRATION` — fragmento zsh opcional administrado por Cortex, por defecto `$CORTEX_HOME/shell/cortex.zsh`
- `OPENCODE_DEFAULT_FLAGS` — flags por defecto para `oc`
- `INNIT_DIR` y overrides `INNIT_*_DIR` — navegación rápida de subdirectorios
- Aliases y paths personales
Expand Down
1 change: 1 addition & 0 deletions local/env.zsh.example
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
# export CORTEX_HOME="$HOME/.cortex"
# export CORTEX_ROOT="$BARBATDEV_DIR/cortex/cortex"
# export CORTEX_DOTFILES_DIR="$BARBATDEV_DIR/cortex/cortex-dotfiles"
# export CORTEX_SHELL_INTEGRATION="$CORTEX_HOME/shell/cortex.zsh"

# Proyectos personales
# export PERSONAL_PROJECTS_DIR="$BARBATDEV_DIR/products"
Expand Down
28 changes: 28 additions & 0 deletions scripts/check-cortex-shell-integration.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
#!/bin/bash
set -euo pipefail

repo_root="$(cd "$(dirname "$0")/.." && pwd)"
tmp_dir="$(mktemp -d)"
trap 'rm -rf "$tmp_dir"' EXIT

integration="$tmp_dir/cortex.zsh"
printf '%s\n' '_CORTEX_INTEGRATION_PROBE=loaded' > "$integration"

env CORTEX_SHELL_INTEGRATION="$integration" zsh -f -c '
source "$1" >/dev/null
[[ "$_CORTEX_INTEGRATION_PROBE" == loaded ]]
(( ! ${+_CORTEX_SHELL_INTEGRATION_PATH} ))
' _ "$repo_root/zsh/zshrc"

env CORTEX_SHELL_INTEGRATION="$tmp_dir/missing.zsh" zsh -f -c '
source "$1" >/dev/null
(( ! ${+_CORTEX_INTEGRATION_PROBE} ))
' _ "$repo_root/zsh/zshrc"

mkdir -p "$tmp_dir/cortex-home/shell"
printf '%s\n' '_CORTEX_DEFAULT_INTEGRATION_PROBE=loaded' > "$tmp_dir/cortex-home/shell/cortex.zsh"

env -u CORTEX_SHELL_INTEGRATION CORTEX_HOME="$tmp_dir/cortex-home" zsh -f -c '
source "$1" >/dev/null
[[ "$_CORTEX_DEFAULT_INTEGRATION_PROBE" == loaded ]]
' _ "$repo_root/zsh/zshrc"
6 changes: 6 additions & 0 deletions zsh/zshrc
Original file line number Diff line number Diff line change
Expand Up @@ -255,6 +255,12 @@ _LOCAL_ENV="$_DOTFILES_DIR/local/env.zsh"
[[ -f "$_LOCAL_ENV" ]] && source "$_LOCAL_ENV"
#endregion

#region Cortex Shell Integration
_CORTEX_SHELL_INTEGRATION_PATH="${CORTEX_SHELL_INTEGRATION:-$CORTEX_HOME/shell/cortex.zsh}"
[[ -r "$_CORTEX_SHELL_INTEGRATION_PATH" ]] && source "$_CORTEX_SHELL_INTEGRATION_PATH"
unset _CORTEX_SHELL_INTEGRATION_PATH
#endregion

#region Atuin
# Historial de shell con búsqueda avanzada (reemplaza Ctrl+R)
if command -v atuin &>/dev/null; then
Expand Down
Loading