open-index/open-npm huggingface dataset:
npm package: @fractalmind-ai/fractalmind-sdk
Description: TypeScript SDK for FractalMind Protocol on Sui
Latest version: 0.1.0

# FractalMind Protocol TypeScript SDK

TypeScript SDK for interacting with `fractalmind_protocol` on Sui.

## Features

- Organization: `createOrganization`, `getOrganization`, `updateDescription`
- Agent: `registerAgent`, `getAgentCertificate`, `updateCapabilities`
- Task: `createTask`, `assignTask`, `submitTask`, `verifyTask`, `completeTask`
- Fractal: `createSubOrganization`, `detachSubOrganization`
- Governance: `createProposal`, `castVote`, `executeProposal`

All write methods return a `Transaction` so you can compose multi-step PTBs.

## Install

```bash
cd sdk
npm install
```

## Quick Start

```ts
import { FractalMindSDK } from '@fractalmind-ai/fractalmind-sdk';

const sdk = new FractalMindSDK({
  packageId: '0xYOUR_PACKAGE_ID',
  registryId: '0xYOUR_REGISTRY_ID',
  network: 'testnet',
});

const tx = sdk.organization.createOrganization({
  name: 'Core Org',
  description: 'Fractal root organization',
});

// client.signAndExecuteTransaction example:
// await sdk.client.signAndExecuteTransaction({ signer, transaction: tx });
```

## API Notes

- `registryId` is required for organization/fractal create flows.
- `getAgentCertificate` supports:
  - by object id: `{ certificateId }`
  - by owner address: `{ owner, orgId? }`
- Governance proposal lifecycle on-chain is:
  - `createProposal` -> `startProposalVoting` -> `castVote` -> `finalizeProposalVoting` -> `executeProposal`

## Development

```bash
cd sdk
npm run typecheck
npm run build
npm test
```
npm package: @fractalq/client
Description: FractalQ JavaScript client — pass API keys from your app; this package never reads secret env vars (npm-safe).
Latest version: 2.1.1

# @fractalq/client

JavaScript client for [FractalQ](https://fractalq.com). **API keys are never read from environment variables inside this package** — pass them from your app (DB, vault, or your own `process.env` in application code).

## Install

```bash
npm install @fractalq/client
```

## Config (server)

```js
import { getSignalQApiUrl, getFractalQApiKey } from '@fractalq/client';

const key = process.env.MY_APP_FRACTALQ_NODE_KEY; // your app loads this, not the library
const url = getSignalQApiUrl(getFractalQApiKey(key));
```

## Browser (proxy + Firebase token)

```js
import FractalQ from '@fractalq/client';

const client = new FractalQ({
  useBackendProxy: true,
  sessionApiKey: nodeKeyFromYourUi,
  authTokenProvider: async () => {
    const user = getFirebaseAuth().currentUser;
    return user ? user.getIdToken() : null;
  },
});

await client.execute(null, { input_0: imageUrl }, { async: true, callbackUrl, memeId });
```

## Publish

```bash
cd fractalq-client
npm login
npm publish --access public
```

Scoped package `@fractalq/client` requires npm org access or publish under your scope.

## Local link (monorepo)

In WOKENMEME `package.json`:

```json
"@fractalq/client": "file:../fractalq-client"
```

Then `yarn` or `npm install`.