The Modern Agentic Workflow: Skillsets

Why Skills Matter

Best practices in programming evolve over time. If these practices can be standardized, they can be included in software as default configuration - or perhaps a conventional addon for a given tech stack.

Newly installed agentic coding tools generally lack workflow configuration and coding standards/conventions. Claude, Cursor, Copilot allow you to add custom rules and skills to help optimize your workflow. Properly configured agents tend to produce more consistent, maintainable, and project-aligned code than agents operating without that configuration. Apart from reinforcing framework conventions, the goal is to get the best quality code we can from the agents. We can handle that through a well structured workflow and covering specific weaknesses in the AI approach.

Issues With The Default Configuration

Without additional guidance, coding agents tend to optimize for completing the current task rather than maintaining consistency across the entire application. Some common examples include:

  • Growing existing files rather than introducing new abstractions.
  • Reimplementing logic that already exists elsewhere in the application.
  • Using different implementation patterns for similar features.
  • Agents don’t introduce new tests unless it’s configured or already prominent in context.

Some of these issues are due to poor context retrieval - a major topic in AI that both agents and people making the skillsets are working on improving.

The Maintenance Problem

Working with skillsets is a rapidly evolving practice. As our preferred practices change, our agent configuration needs to evolve with them.

AI models will continue improving, and some best practices will likely become built-in behaviors rather than custom skills. Some already have. However, it’s difficult to know how much overlap exists between built-in behavior and custom instructions, or how much redundant configuration increases context usage.

Frameworks evolve as well. New versions of frameworks, libraries, and other dependencies introduce new conventions and deprecate old ones. The associated skillsets need to be updated in turn.

Managing these configurations becomes even more complicated when working across multiple repositories, different tech stacks, and several development machines. Different projects and different teams may all require different workflows and conventions, making a one-size-fits-all configuration unrealistic.

Customizing community-maintained skills introduces another challenge. Once you’ve modified a downloaded skillset, keeping up with upstream updates becomes harder.

Agent tooling is beginning to address some of these challenges, but versioning, distribution, synchronization, and maintenance of skillsets still feels immature compared to the package management ecosystems developers are already accustomed to.

My Approach

There are a growing number of community-maintained skills, workflows, and rule libraries available for popular frameworks and tools. Personally, I have skillsets set up for both Godot game development and Ruby development. I recommend separating framework-specific skills from personal customizations. Framework skills can be updated independently as conventions change, while personal rules remain stable across projects.

Generally I like to step in the BDD direction and involve acceptance criteria directly in my main prompting workflow. Workflow configurations will be different for everyone, with differences depending on team, project scope, testing frameworks used, and development methodology. In personalizing my workflow, I’ve created some rules with instructions for handling specific prompt types (ie. bug vs new feature).

I’m also testing out a rule-generating workflow. Rather than manually maintaining every project rule, the agent can help identify recurring instructions and suggest new rules when patterns emerge:

https://forum.cursor.com/t/how-to-force-your-cursor-ai-agent-to-always-follow-your-rules-using-auto-rule-generation-techniques/80199

I currently use Cursor as my main agent editor: https://cursor.com/referral?code=6DANOTJFXB8A

Skill registries:

Ruby on Rails (pick one):

React

Contact

Let’s talk about what you need. I offer flexible pricing for early-stage startups and longer-term projects.

Form validation failed.