# GaiaNet x Boardroom ## Summary Integrate Boardroom Governance API with GaiaNet to enable access to DAO governance data within the GaiaNet ecosystem. This integration involves customizing GaiaNet nodes to handle Boardroom's data structures, developing a middleware API, creating a demo app, and updating documentation. ## Goals 1. **Seamless Data Integration**: Establish a secure and reliable connection between the Boardroom Governance API and GaiaNet. 2. **Enhanced Developer Access**: Enable developers on GaiaNet to utilize Boardroom's DAO governance data through a middleware API. 3. **Increased API Adoption**: Boost the adoption and usage of Boardroom's API within the GaiaNet developer community. ## Deliverables ### GaiaNet Node Fork of [gaianet-node](https://github.com/GaiaNet-AI/gaianet-node) repo to: - Update `config.json` to include DAO `cname` and Boardroom API Key as config parameters. - Update `install.sh` script to include module installation instructions - Update `gaianet init` instructions to deploy the module API in case all config parameters are specified in `config.json` - Implement an entrypoint like/within `gaianet` CLI to start/stop API server for data fetching and (potentially) embeddings generation. ### Boardroom Middleware - Develop a middleware API to fetch data from the Boardroom Governance API. - Provide an API documentation endpoint for creating LLM-generated interfaces (e.g., using Langchain APIChain module). ### Demo App Create a demo chat application that connects to the middleware API for demonstrating DAO information inference. ### Updated Documentation Update [GaiaNet-AI/docs](https://github.com/GaiaNet-AI/docs) repo to include: - Instructions on using the Boardroom module API to connect with the LLM model and create custom knowledge base embeddings. - Steps on how to search and import data from the Boardroom Governance API. - Information on supported data types and search criteria. ## Timeline ### Development and Testing 3 Weeks ### Refinement and Documentation 1 Week ## Questions Is the aim in general to provide individual access to all available data endpoints in the Boardroom API or to provide endpoints that return aggregated data at different levels? (e.g. protocol, proposal, member, level) > *Answer: this is a tough question because the difference is a fine line. The user will use this data in two ways (1) as prompting questions like a ChatGPT experience, so they may need very grainular information (or a wholistic question which needs a bigger picture and context). (2) they will use this data to build dApps on top of it.* May we have an API Key without providing our personal/billing/credit card information? > *Answer: is the concern here regarding who pays for the API billing? If so we earmark a reimbursement and have the grant cover that. Or is the concern regarding anonymity? If it's an anonymity concern we don't have a process in place for that.* Are there any specific commands or functionalities we need to add to the CLI for this integration? > *Answer: I'm assuming you're asking what prompting questions may be answered and therefore need to proactively need to be mapped out? When it comes to functionalities, the importance is that each of these DAOs have their own node or data source* Are there specific models or knowledge bases that need to be loaded on these nodes? > *Answer: the knowledge bases would need to be able to be (1) prompted, therefore most models are using a Llama model and then (2) need to be capable of building a dApp on it* Are there security measures required for the connection between Boardroom Governance API and GaiaNet nodes? > *Answer: In regards to security measures that's up to the devs who create the nodes or integrations on how they want it implemented. There should be basic security in place. additionally here are some example files: https://github.com/search?q=org%3AGaiaNet-AI%20security&type=code to help provide some context* What are the key testing scenarios for ensuring the integration works as expected? > *Answer: Teams have demoed the proper integration and functionality through a demo of their node being able to be prompted here: https://www.gaianet.ai/chat and if future examples are needed can share an example on our next call* Are there existing documentation standards or templates we should follow? > *Answer: Great question, the documentation style is for open source documentation (18F Guides) or example here: https://opensource.googleblog.com/2018/10/building-great-open-source-documentation.html* - Can you provide any details on how the integration is expected to shorten the development and sales cycle of custom GPTs? - Are there good examples or case studies of custom GPTs that have been developed using the current system?