diff --git a/.gitignore b/.gitignore index 96fa04e..569e97d 100644 --- a/.gitignore +++ b/.gitignore @@ -17,3 +17,7 @@ webpack-build-config.json # local settings .envrc.local + +# local agent settings +.agents/ +.claude diff --git a/.gitmodules b/.gitmodules index 60b84e1..f3e2ac2 100644 --- a/.gitmodules +++ b/.gitmodules @@ -7,3 +7,6 @@ [submodule "plugins/indico-plugins-contrib"] path = plugins/indico-plugins-contrib url = git@github.com:indico/indico-plugins-contrib.git +[submodule "agents/indico"] + path = agents/indico + url = https://github.com/unconventionaldotdev/indico-agents.git diff --git a/AGENTS.md b/AGENTS.md new file mode 120000 index 0000000..93c19c5 --- /dev/null +++ b/AGENTS.md @@ -0,0 +1 @@ +agents/indico/AGENTS.md \ No newline at end of file diff --git a/CLAUDE.md b/CLAUDE.md new file mode 120000 index 0000000..49405e8 --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1 @@ +agents/indico/CLAUDE.md \ No newline at end of file diff --git a/CONVENTIONS.md b/CONVENTIONS.md new file mode 120000 index 0000000..5c24f71 --- /dev/null +++ b/CONVENTIONS.md @@ -0,0 +1 @@ +agents/indico/CONVENTIONS.md \ No newline at end of file diff --git a/Makefile b/Makefile index d340272..1ee8d04 100644 --- a/Makefile +++ b/Makefile @@ -11,7 +11,10 @@ help: @echo " make tmux - Launch the tmux session" @echo " make config - Edit indico.conf" @echo "" - @echo "⟐ Environment:" + @echo "⟐ Agents:" + @echo " make agent-skills - Install Indico agent skills" + @echo "" + @echo "⟐ Dependencies:" @echo " make deps - Install all dependencies (Python + JS)" @echo " make deps-core - Install core-only dependencies" @echo " make deps-distro - Install distribution-only dependencies" @@ -69,7 +72,13 @@ tmux: config: $${EDITOR:-vi} indico/indico/indico.conf -# -- environment --------------------------------------------------------------- +# -- agents -------------------------------------------------------------------- + +.PHONY: agent-skills +agent-skills: + bash agents/indico/scripts/install-links.sh --skills + +# -- dependencies -------------------------------------------------------------- # Full setup of development environment diff --git a/README.md b/README.md index 08457b0..c0e1a9d 100644 --- a/README.md +++ b/README.md @@ -25,8 +25,10 @@ This repository is optimized for the following use cases: - Deploy the distribution to a production environment. This repository contains editable code of: -- Indico as a Git submodule in [`indico/`](./indico/) -- A few Indico plugins as Git submodules in [`plugins/`](./plugins/) +- [Indico core](https://github.com/indico/indico) as a Git submodule in [`indico/`](./indico/) +- [Official Indico plugins](https://github.com/indico/indico-plugins) as a Git submodule in [`plugins/indico-plugins`](./plugins/indico-plugins/) +- [Community Indico plugins](https://github.com/indico/indico-plugins-contrib) as a Git submodule in [`plugins/indico-plugins-contrib`](./plugins/indico-plugins-contrib/) +- [Indico agent tooling](https://github.com/unconventionaldotdev/indico-agents) as Git submodule in [`agents/indico`](agents/indico/) - Customizations for this "distribution plugin" in [`indicorp/`](./indicorp/) This repository includes other development tools such as: @@ -71,6 +73,18 @@ If you didn't clone the repository recursively, clone and initialize submodules git submodule update --init --progress ``` +### Using AI agents + +AI agents can help with common Indico development tasks such as locating code, writing tests, adding request handlers, +preparing migrations and updating the Indico submodule. The repository provides [agent instructions](AGENTS.md) and +Indico-specific skills for these tasks. + +Install the skills with: + +```shell +make agent-skills +``` + ### Install Python and NodeJS versions Make sure to have the right versions of `python` and `node` installed: diff --git a/agents/indico b/agents/indico new file mode 160000 index 0000000..0d4e04a --- /dev/null +++ b/agents/indico @@ -0,0 +1 @@ +Subproject commit 0d4e04aeb9a681dd32e724567feff749baa314ac