Skip to content

feat: experiment using AI agents to maintain gentoo-overlay#7522

Draft
douglarek wants to merge 1 commit into
gentoo-zh:masterfrom
douglarek:ai-agents
Draft

feat: experiment using AI agents to maintain gentoo-overlay#7522
douglarek wants to merge 1 commit into
gentoo-zh:masterfrom
douglarek:ai-agents

Conversation

@douglarek

@douglarek douglarek commented Jul 10, 2025

Copy link
Copy Markdown
Contributor

The current Gentoo overlay rules have been adapted for the following clients:

  1. sst/opencode-bin (in this repository) uses AGETNS.md. Note: This client is currently not mature and has issues where downloading source files gets interrupted halfway.
  2. Claude Code (this is in the main Gentoo repository) uses CLAUDE.md.
  3. Gemini-cli uses GEMINI.md (custom filenames can also be configured).
  4. GitHub Copilot in VSCode uses .github/copilot-instructions.md.

Here is a video I recorded using VS Code to operate Copilot(Recommended to watch in full screen):

20250710_202113.mp4

A few details: the model used in the video is GPT-4.1, which is relatively inexpensive and unlimited for GitHub Copilot Pro users (there is also a quota for free users). However, this model is not the best. If possible, you can use Claude Sonnet 3.7/4, which is deeply optimized for agents and is relatively powerful. That said, it depends on your circumstances—if the rules are well-optimized, the choice of model might become less important.

A side note: In fact, for agent clients, they generally support single-dialogue direct output, which can provide some ideas for automated package upgrades.

Regarding AI: The official repository gentoo/gentoo explicitly disables AI in pull requests, but I believe AI is not a catastrophic threat; if used properly, it can also enhance productivity.

Not sure if the maintainers are interested in maintaining and improving it, just sharing to take a look.

The current Gentoo overlay rules have been adapted for the following clients:
1. sst/opencode (in this repository) uses AGETNS.md, which is also compatible with Claude Code, though I lack the conditions to test it.
2. Gemini-cli uses GEMINI.md (custom filenames can also be configured).
3. GitHub Copilot in VSCode uses .github/copilot-instructions.md.

Signed-off-by: Leo Douglas <douglarek@gmail.com>
@github-actions

This comment was marked as off-topic.

@peeweep

peeweep commented Jul 10, 2025

Copy link
Copy Markdown
Member

@douglarek

Copy link
Copy Markdown
Contributor Author

https://wiki.gentoo.org/wiki/Project:Council/AI_policy

Regarding AI: The official repository gentoo/gentoo explicitly disables AI in pull requests, but I believe AI is not a catastrophic threat; if used properly, it can also enhance productivity.

@liuyujielol

Copy link
Copy Markdown
Contributor

I suggest you building your own overlay to do this.

@douglarek

Copy link
Copy Markdown
Contributor Author

I suggest you building your own overlay to do this.

Well, let's leave it here for now; maybe someone can find it useful.

@peeweep peeweep marked this pull request as draft July 13, 2025 04:15
@peeweep

peeweep commented Jul 13, 2025

Copy link
Copy Markdown
Member

Converted to drafts to avoid others merging.

@douglarek

douglarek commented Jul 19, 2025

Copy link
Copy Markdown
Contributor Author

The rule file has been updated in:https://gist.github.com/douglarek/61f25524a11bfe18480f67eb37c6de9b.

Two videos demonstrating the use of claude-code have been added. The difference is that the first video uses the claude sonnet-4 model, while the other uses the domestic kimi k2 model (the provider, moonshot, has already offered a claude-compatible interface). For this example, the difference is not very significant, and specific details can be discerned through the videos.

claude-code.mp4
claude-code-kimi.mp4

Additionally, here's a tip for uploading videos as GitHub attachments: GitHub attachments cannot exceed 10MB, so you can use ffmpeg to compress the video:

ffmpeg -i [input].mp4 -fs 10M -c:v libx264 -preset slow -crf 28 -c:a aac -b:a 128k [output].mp4

[input]: Input video file name
[output]: Output video file name
-fs: Desired video size

@vitaly-zdanevich

Copy link
Copy Markdown
Contributor

GitHub attachments cannot exceed 10MB, so you can use ffmpeg to compress the video:

AV1 is the best compression, with webm file extension - and your video will be much smaller.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants