aibtcdev / ai-agent-crew

Langchain + CrewAI powered AI agents with Bitcoin wallets.
https://aibtc.dev
32 stars 11 forks source link

Crew: Smart Contract Analysis #13

Closed whoabuddy closed 2 months ago

whoabuddy commented 3 months ago

AIBTCdev Bounty

Enhance blockchain security and trust by thoroughly analyzing smart contracts using specialized agents. This bounty incentivizes identifying vulnerabilities and ensuring best practices, promoting a secure and innovative decentralized ecosystem.

Prize

$2,000 in BTC

Criteria

Agents

Below are some ideas that we'd like to see implemented, however modifications to their prompts and/or additional agents and roles are welcome!

Agent 1

Agent 2

Agent 3

Agent 4

Agent 5

Agent 6

Agent 7

Tasks

Same as the agents, these tasks represent the flow we'd like to see, but feel free to modify the description, expected output, and add more tasks as needed.

[!NOTE] Tasks can be passed to other tasks as dependencies, so that the result of a prior task is passed into the next one.

Task 1

Task 2

Task 3

Task 4

Task 5

Task 6

Task 7

Execution Loop

The execution loop is sequential as we expect the agents to complete all of the tasks, then provide a finalized report.

Additional Information

The final output would be great in markdown, if we provide a template to the final writer they can fill it in based on the other agent's outputs.

Example prompt for the report compiler:

Using the provided markdown template, compile a comprehensive report of the smart contract analysis. Fill in the placeholders with the corresponding information from the previous tasks. Ensure that all sections are completed with the relevant details from each analysis step. If any section lacks information, indicate that the analysis for that part was inconclusive or not performed.

Example markdown for the final report:

# Smart Contract Analysis Report

Contract Address: {CONTRACT_ADDRESS.CONTRACT_NAME}

## Summary

{SUMMARY_RESULT}

## Function Analysis

{FUNCTION_ANALYSIS_RESULT}

## Diagrams

{DIAGRAM_RESULT}

## Updateability

{UPDATEABILITY_RESULT}

## Security Vulnerabilities

{SECURITY_VULNERABILITIES_RESULT}

The final agent's report should be saved to a markdown file.

If the context window gets too large during the process tasks can be further broken down into smaller pieces.

whoabuddy commented 3 months ago

hey, how do i provide poc?

We're going to cover the new bounty in the meeting today - general process is first to submit a working PR gets the bounty, and we demo the result in the next weekly meeting.

Would you be available to join us?

biwasbhandari commented 3 months ago

How do i Submit the code?

whoabuddy commented 3 months ago

How do i Submit the code?

My original intent was to have anyone completing it take our code and send a PR with the updates, but I don't think I spelled that out in the issue.