[camera_android_camerax] Setup agent skills camerax#11930
Conversation
- Add dart_skills_lint dependency and configuration - Create .agents/skills and skills directories with documentation - Set up isolated third_party skills installation for remote skills - Symlink remote skills into .agents/skills - Add validate_skills_test.dart for CI integration
|
No changelog needed because none of the changes are user facing only contributor facing. |
There was a problem hiding this comment.
Code Review
This pull request adds local and third-party AI agent skills to the camera_android_camerax package, including configuration files, tests, and documentation for managing them. Feedback on these changes identifies a missing verification script (check.sh) referenced in the readiness skill, an invalid license file containing a 404 error for the anthropics-skills dependency, a violation of Dart API boundaries due to importing internal src/ files in a test, and fragile path parsing in tracked_skills_publishing_test.dart that could fail in monorepo CI environments.
camsim99
left a comment
There was a problem hiding this comment.
Left some high level questions!
There was a problem hiding this comment.
@camsim99 I have some work happening to turn this into dart code but if you are ok with it I would like to land that change independently.
There was a problem hiding this comment.
Code Review
This pull request introduces local and third-party AI agent skills to the camera_android_camerax package, including a readiness check script, custom lint rules, and validation tests. Feedback on the changes suggests improving robustness by replacing an unsafe cast with a safe type check, wrapping a process execution in a try-catch block to handle potential exceptions, and verifying the presence of git and a git repository in the shell script before running git status.
a272087 to
acc34a5
Compare
|
/gemini-code-review |
| return true; | ||
| } | ||
|
|
||
| if (!getBoolArg(_allowPrereleaseFlag)) { |
There was a problem hiding this comment.
this code was not deleted only moved.
camsim99
left a comment
There was a problem hiding this comment.
LGTM just had some questions about EnforceTrackedSkillsInternalRule for my own understanding! Sorry for the delayed review!
There was a problem hiding this comment.
Why does this live within the camera_android_camerax plugin? Assuming this might be something we would want available to all plugins but we are just starting with it here?
There was a problem hiding this comment.
Also why is it in the test/ directory? Is that standard for custom skill lints?
There was a problem hiding this comment.
Why does this live within the camera_android_camerax plugin? Assuming this might be something we would want available to all plugins but we are just starting with it here?
There is already a lint that ensures that skills that have the lint enabled are not published. This is more of a meta test that makes sure that for this package (later repo) that we have configured the skills correctly.
Also why is it in the test/ directory? Is that standard for custom skill lints?
I am still working on the standard for where custom lints should live more broadly in dart packages. For this repo the lint will likely move to the repo tooling directory the first time we have another package adopt skills and want to enforce this configuration. You can think of custom lints kind of like test utils classes.
| @@ -0,0 +1,26 @@ | |||
| Copyright 2026 The Flutter Authors. All rights reserved. | |||
There was a problem hiding this comment.
Why is Flutter code in a third_party directory?
| @@ -0,0 +1,23 @@ | |||
| # Third-Party Agent Skills | |||
There was a problem hiding this comment.
Can we make a third_party/skills/ that contains this and all the skills, instead of making the individual skills peers of third_party/packages/, and having the README for all of third-party sound like it's about skills?
|
I talked to @stuartmorgan-g out of band and we have a better way of determining what skills should be configured with dont publish check. I am going to resolve the paths for all the skills and filter out third_party. Holding landing this pr for that change. |
Setup the new agent skills architecture for camera_android_camerax:
Taking over from #11895
Tooling changes:
dart pub --dry-runerrors (in publish_check) if the folders are in .pubignoreFuture changes:
Pre-Review Checklist
[shared_preferences]///).If you need help, consider asking for advice on the #hackers-new channel on Discord.
Footnotes
Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling. ↩ ↩2