- aip is a particle which is defined using 2 options - front matter in markdown - cyb.toml file in root folder - definitions - name: particle - logo: paritcle - menu: using simple array of relative links - widget: using mdx - access rights - aip must ask permissions to access the following apis of cyb - avatar - list all avatars - get active avatar - activate avatar - signer - sign message - verify message - cast transaction - connection - ability to limit external access to the internet - ipfs gateway - in general safe - http gateway - pretty sure the app must ask to which domains it want to go - list swarm - add to swarm - delete from swarm - storage - must be done within aip storage space - cool to limit amount of data aip can eat - pin file - unpin file - hub settings - necessary for - configuration by developer - omninetwork apps - networks - list networks - add network - remove network - tokens - list tokens - add token - remove tokens - skills - list skills - add skill - remove skill - channels - list bridges - add bridge - remove bridge - sense - aip must be able to access sense related data of cozodb - get avatar threads - get messages for thread - brain - aip must be able to access brain related data of cozodb - need to discuss how to organize access - ability for custom cozodb queries wanted - time - aip must be able to access tx related data of cozodb - list transactions - sigma - aip must have ability for receiving token balances - get token balance - adviser - show advice - hide advice - mind - this is a bit harder as here must be deep integration with ux lib - there must be stricly defined api what can be show in action bar - need to discuss - authz - list autzh capabilities - grant authz permission - revoke authz permission - aip keys - aip can ask for private key derived from root private key under path of particle - get key for aip