Refactor devcontainer and MCP tools for containerized development

Ajout et configuration d’un environnement de développement conteneurisé (devcontainer) avec support multi-langages (Go, Rust, Python), intégration d’outils LLM locaux/cloud (LM Studio, Claude Pro), et refonte des outils MCP : suppression du module sandbox, correction de la gestion des chemins projet dans jj.py, ajout d’une fonction jj_new_tool, et structuration du Makefile pour le build multiplateforme. Mise à jour des scripts (docker-entrypoint.sh, setup-devcontainer.sh), du README.md et de bin/jj-ai-commit.sh pour automatiser la génération de messages de commit à partir des résumés des fichiers modifiés.
This commit is contained in:
2026-03-11 16:34:09 +01:00
parent 1c9cee35df
commit d6fb4e33e5
30 changed files with 3502 additions and 193 deletions

View File

@@ -24,13 +24,12 @@ RUN curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain stable && \
RUN npm install -g typescript tsc @types/node eslint prettier pyright typescript-language-server
RUN cargo binstall --strategies crate-meta-data jj-cli
RUN cargo install --git https://github.com/nilskch/jj-lsp.git
RUN cargo binstall --strategies crate-meta-data jj-cli aichat \
&& cargo install --git https://github.com/nilskch/jj-lsp.git
RUN gem install github-linguist
RUN pip install --no-cache-dir --break-system-packages ruff fastmcp ipython
RUN pip install --no-cache-dir --break-system-packages ruff fastmcp ipython tasklin
RUN curl -fsSL https://opencode.ai/install | bash && \
mkdir -p /root/.config/opencode && \
@@ -39,11 +38,11 @@ RUN curl -fsSL https://opencode.ai/install | bash && \
ENV GOPATH=/usr/local/go
ENV GOBIN=/usr/local/go/bin
RUN go install golang.org/x/tools/gopls@latest \
&& go install github.com/isaacphi/mcp-language-server@latest \
&& go install github.com/dorcha-inc/orla/cmd/orla@latest
&& go install github.com/isaacphi/mcp-language-server@latest
RUN mkdir -p /etc/bash_completion.d \
&& orla completion bash > /etc/bash_completion.d/orla \
&& curl https://raw.githubusercontent.com/sigoden/aichat/main/scripts/completions/aichat.bash \
> /etc/bash_completion.d/aichat \
&& jj util completion bash > /etc/bash_completion.d/jj
RUN rustup component add rust-analyzer --toolchain nightly
@@ -71,6 +70,18 @@ COPY --chown=${USERNAME}:${USERNAME} opencode /home/${USERNAME}/.config/opencode
USER $USERNAME
WORKDIR /workspace
ARG OCI_VERSION=latest
ARG OCI_CREATED=unknown
ARG OCI_REVISION=unknown
LABEL org.opencontainers.image.title="PMOCrazyCoder" \
org.opencontainers.image.description="AI-powered dev container with Rust, Go, Python, Node, Jujutsu, Claude Code and opencode" \
org.opencontainers.image.url="https://niepce.petite-maison-orange.fr/public/pmocrazycoder" \
org.opencontainers.image.source="https://niepce.petite-maison-orange.fr/public/pmocrazycoder" \
org.opencontainers.image.version="${OCI_VERSION}" \
org.opencontainers.image.created="${OCI_CREATED}" \
org.opencontainers.image.revision="${OCI_REVISION}" \
org.opencontainers.image.licenses="CECILL-2.1"
ENTRYPOINT ["/usr/local/bin/entrypoint.sh"]
CMD ["/bin/bash"]