--- ansible_python_interpreter: /usr/bin/python3 username: fscotto user_group: fscotto user_home: "/home/{{ username }}" user_shell: /bin/bash effective_username: "{{ username }}" effective_user_group: "{{ user_group }}" effective_user_home: "{{ user_home }}" emacs_enabled: false emacs_dotfiles: - name: Bash Emacs client fragment src: .bashrc.d/25-emacs-client-desktop.sh dest: .bashrc.d/25-emacs-client-desktop.sh mode: "0644" - name: Emacs authoring configuration src: .emacs.d/ dest: .emacs.d/ mode: preserve emacs_authoring_directories: - .bashrc.d - Org - Org/documentation - Org/meetings - Org/projects emacs_authoring_files: - name: Org HTML stylesheet src: .emacs.d/templates/org/org.css dest: Org/org.css mode: "0644" xdg_user_directories: - Desktop - Documents - Downloads - Music - Pictures - Public - Templates - Videos common_packages: - bash-completion - bat - entr - fzf - git - jq - tree - unzip - vim - wget - zip - zoxide vim_plugins_enabled: true vim_plugin_distro_packages: - fzf - vim-fugitive vim_plugin_source_plugins: - name: fzf repo: https://github.com/junegunn/fzf.git version: v0.72.0 - name: fzf.vim repo: https://github.com/junegunn/fzf.vim.git version: 34a564c81f36047f50e593c1656f4580ff75ccca common_dotfiles: - name: .bashrc src: .bashrc dest: .bashrc mode: "0644" - name: .bash_profile src: .bash_profile dest: .bash_profile mode: "0644" - name: .bashrc.aliases src: .bashrc.aliases dest: .bashrc.aliases mode: "0644" - name: .vimrc src: .vimrc dest: .vimrc mode: "0644" - name: bat config src: .config/bat/ dest: .config/bat/ mode: preserve # AI coding-agent lifecycle controls are independent for every agent. # Installation and removal are mutually exclusive per agent; the common # pre-task enforces this before any changes are made. ai_agents: opencode: npm_package: opencode-ai install_enabled: true deploy_enabled: true uninstall_enabled: false claude_code: npm_package: "@anthropic-ai/claude-code" install_enabled: false deploy_enabled: false uninstall_enabled: true codex: npm_package: "@openai/codex" install_enabled: true deploy_enabled: true uninstall_enabled: false gemini_cli: npm_package: "@google/gemini-cli" install_enabled: true deploy_enabled: true uninstall_enabled: false github_copilot: npm_package: "@github/copilot" install_enabled: true deploy_enabled: true uninstall_enabled: false ibm_bob: install_enabled: true deploy_enabled: false uninstall_enabled: false ai_agents_deploy_enabled_names: >- {{ ai_agents | dict2items | selectattr('value.deploy_enabled') | map(attribute='key') | list }} ai_agents_dotfiles: - name: AI common config src: .config/ai/ dest: .config/ai/ mode: preserve agents: - opencode - codex - gemini_cli - name: Gemini CLI config src: .gemini/ dest: .gemini/ mode: preserve agents: - gemini_cli - name: OpenCode config src: .config/opencode/ dest: .config/opencode/ mode: preserve agents: - opencode - name: Claude Code memory src: .claude/ dest: .claude/ mode: preserve agents: - claude_code ai_agents_templates: - name: Codex config src: .codex/config.toml.j2 dest: .codex/config.toml mode: "0644" agents: - codex