Agent skill

new-project

Architect new Python-based blockchain projects using the Ape framework. Use when users want to start a new blockchain project and need guidance on proper project structure, architecture patterns, configuration, and foundational setup. Supports SDK development, plugin creation, bot development with Silverback, protocol development, and complex blockchain applications. Determines project type and guides users through establishing the correct architectural foundation.

Stars 5
Forks 0

Install this agent skill to your Project

npx add-skill https://github.com/ApeWorX/skills/tree/main/development/new-project

SKILL.md

Overview

Guide users through architecting Python-based blockchain projects using the Ape framework. This skill helps establish proper project structure, configuration, and architectural patterns before implementation begins.

Prerequisites

Before using this skill, verify the user has:

Workflow

Step 1: Determine Project Type

Ask focused questions to understand what the user wants to build:

Essential questions:

  • What problem are you solving or what functionality do you need?
  • Will this interact with existing protocols or create something new?
  • Does this need to monitor blockchain events or execute transactions?
  • Is this for a specific protocol, a general tool, or a new application?

Based on responses, categorize the project as one of:

  1. Protocol SDK - Python library for interacting with an existing protocol (e.g. Uniswap)
  2. Ape Plugin - Extension adding functionality to the Ape framework (e.g. Trezor hardware wallet)
  3. Blockchain Bot - Automated system responding to on-chain events (e.g. Trading bot)
  4. Protocol Development - A completely new smart contract protocol (including scripts and tests)
  5. Blockchain Application - A complex application integrating with one (or more) blockchain(s)

Step 2: Gather Project-Specific Context

Based on project type, ask targeted follow-up questions. Keep questions focused and avoid overwhelming the user.

For Protocol SDKs:

  • Which protocol/contracts will this SDK interact with?
  • What are the main operations users will perform with the SDK?
  • Do you have a link to the source code and/or documentation for the protocol?
  • Reference the protocols/writing-sdks skill for more detailed workflow

For Ape Plugins:

  • What functionality will this add to Ape? (Plugin vertical e.g. AccountAPI, CompilerAPI, ProviderAPI, etc.)
  • Does this integrate with a command-line tool (installed locally) or an external service (requiring an API key)?
  • Does it need it's own command-line interface integrated with ape? (e.g. ape [plugin-name] ...)
  • Reference the ape/writing-plugins skill for more detailed workflow

For Blockchain Bots:

  • Which events should trigger actions?
  • What actions should the bot perform, in response to those triggers?
  • Does it need to sign and submit messages or transactions?
  • Reference the silverback/writing-bots skill for detailed bot architecture

For Protocol Development:

  • Which smart contract language do you want to use? (Solidity, Vyper)
  • What does the protocol do?
  • Do you need multi-chain deployment support?
  • Reference the ape/protocol-design skill for more detailed workflow

For Blockchain Applications:

  • What existing protocol(s) does this application need to integrate with?
  • What blockchain operations are needed? (submitting transactions, listening to events)
  • What's the deployment strategy? How does it need to be hosted?
  • Reference the apps/system-design skill for more detailed workflow

Step 3: Generate Project Architecture

Create the appropriate project structure based on chosen project type.

Common elements across all projects:

  1. Verify project structure is complete
  2. Ensure pyproject.toml has required dependencies
  3. Ensure README.md includes setup instructions
  4. Install project locally with uv sync

Step 4: Provide Context and Next Steps

After generating the architecture and installing the project:

  1. Explain the structure - Briefly describe key files and their purposes
  2. Identify knowledge gaps - Note where additional skills or documentation are needed:
  3. Recommend next steps - Clear guidance on what to implement first

Step 5: Iterate and Refine

After user reviews the architecture:

  • Answer questions about design decisions
  • Adjust structure based on feedback
  • Add missing configurations or files
  • Provide additional references as needed

Key Principles

Stay high-level: Focus on correct architecture, not implementation details Fetch documentation: Always get current Ape/Silverback docs before proceeding Reference other skills: Point to specialized skills for detailed workflows Adapt to skill level: Adjust explanations based on user's Python/blockchain experience Validate understanding: Confirm project requirements before generating structure

Common Pitfalls

  • Don't start coding implementation before architecture is confirmed
  • Don't assume package versions - check current stable releases
  • Don't create overly complex structures for simple projects
  • Don't skip documentation fetching - APIs and best practices change
  • Don't forget to specify where additional skills/docs are needed

Expand your agent's capabilities with these related and highly-rated skills.

ApeWorX/skills

writing-bots

Write a bot to continuously listen and respond to events on a public blockchain network.

5 0
Explore
ApeWorX/skills

writing-sdks

Create a Python SDK using Ape Framework to simplify using a given blockchain-based protocol. Use when users need specific best practices and guidance on developing a new integration with the given protocol. Do not use if such a Python SDK already exists that is designed to work with Ape.

5 0
Explore
ApeWorX/skills

uniswap

Trade and interact with Uniswap in Python using Ape and the uniswap-sdk package.

5 0
Explore
ApeWorX/skills

writing-plugins

Create a new Plugin for Ape Framework to integrate a specific tool or service into one of Ape's vertical(s). Use when users need specific best practices and guidance on developing a new plugin for Ape. Do not use if such a plugin already exists that is designed to work with Ape, and instead suggest that.

5 0
Explore
ApeWorX/skills

protocol-design

Design and build a new smart contract protocol using Ape Framework. Use when users want to create a new set of smart contracts that work together as a protocol, including development, testing, scripting/deployment, and potentially other aspects such as distributing a Python SDK or enabling automation of the protocol (through Silverback). Guides users through the full lifecycle from design through deployment and beyond using Ape tooling.

5 0
Explore
ApeWorX/skills

python-packages

Best practices for developing a Python-based project. Use when creating a new project to ensure best practices according to ApeWorX development standards.

5 0
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results