بنقرة واحدة
new-ai-agent-creator
Allows to create new AI agents following the project's architecture patterns.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Allows to create new AI agents following the project's architecture patterns.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Allows to review an open GitHub PR for the current branch, applying project-specific and Java best practice criteria, and adds inline comments directly to the PR.
Allows to create new unit tests following established patterns and conventions.
Allows to commit all files and push them to the remote repository.
Allows to prepares the current branch for a pull request. Use when ready to create a PR or before committing changes.
Allows to plan and guide the implementation of new features or modification of existing features, ensuring best practices, modern design patterns, and proper planning. Use this skill every time when the user asks for implementing something new or modifying already existing logic, architectural advice, or needs to design a new component.
Allows to execute unit tests and systematically resolve all test failures.
| name | new-ai-agent-creator |
| description | Allows to create new AI agents following the project's architecture patterns. |
// turbo-all
This skill provides comprehensive instructions for creating new AI agents in the Test Execution Agents project.
The project follows a modular architecture using Avaje Inject for dependency injection:
agent_core/ (Shared Library)
├── AbstractServer → Base class for HTTP servers
├── AbstractAgentExecutor → Base class for A2A task execution
├── GenericAiAgent → Core interface for all AI agents
├── FinalResult → Marker interface for agent result types
└── InheritanceAwareToolProvider → Enhanced tool provider for @Tool discovery
ui_test_execution_agent/ (Example: UI Testing Agent)
api_test_execution_agent/ (Example: API Testing Agent)
Create a new Maven module. See examples/ for reference implementation of core classes.
Structure:
new_agent/
├── pom.xml
├── deployment/
│ └── cloud/
│ └── cloudbuild.yaml (if deploying to GCP)
└── src/
├── main/
│ ├── java/org/tarik/ta/
│ │ ├── Server.java (Main entry point with BeanScope)
│ │ ├── NewTestAgent.java (Orchestration agent)
│ │ ├── NewTestAgentConfig.java (Agent-specific config)
│ │ ├── NewAgentsBeanFactory.java (DI Factory for agents)
│ │ ├── a2a/
│ │ │ ├── NewAgentExecutor.java (Extends AbstractAgentExecutor)
│ │ │ └── AgentCardProducer.java (A2A card definition)
│ │ ├── agents/
│ │ │ └── NewActionAgent.java (Specialized LangChain4j agent)
│ │ └── tools/
│ │ └── NewAgentTools.java (Agent tools)
│ └── resources/
│ ├── config.properties
│ └── prompts/ (Prompt templates)
└── test/
└── java/org/tarik/ta/
└── ...Test.java
Add dependency to agent_core in your pom.xml. Ensure avaje-inject-generator annotation processor is configured.
Refer to the files in examples/ for implementation details:
Every agent result type must implement FinalResult. Use Java records for DTOs.
Extend GenericAiAgent<T> where T is your result type.
Tools provide capabilities to the agent. Annotate with @Singleton.
Use @Factory to produce specialized agent beans using AiServices.builder().
Annotate with @Singleton. Inject specialized agents.
Extend AbstractAgentExecutor. Annotate with @Singleton.
Initialize BeanScope and start the server.
Create the agent using AI Services with InheritanceAwareToolProvider.
FinalResult interface@Tool method named submitResult for agent to return results@Tool annotation with clear descriptions@P annotation for parameter descriptionsDefaultToolErrorHandler@UserMessage with template variables {{varName}}@V("varName") for method parametersResult<String> from execution methodsgetAgentTaskDescription() for loggingToolExecutionException for tool errorsDefaultToolErrorHandler for retry logicSafeToAutoRun to true for all commands mentioned in this skill.>) to capture command output. instead, rely on the agent's built-in command output capturing.