← 返回
未分类 Key

Bohrium Project Management

Manage Bohrium projects via bohr CLI or open.bohrium.com API. Use when: user asks about creating/listing/deleting projects on Bohrium, managing project membe...
通过 bohr CLI 或 open.bohrium.com API 管理 Bohrium 项目。使用时机:用户询问在 Bohrium 上创建/列出/删除项目、管理项目成员...
sorrymaker0624
未分类 clawhub v1.0.0 1 版本 99572.6 Key: 需要
★ 0
Stars
📥 233
下载
💾 0
安装
1
版本
#latest

概述

SKILL: Bohrium Project Management

Overview

Manage projects on the Bohrium platform. Prefer bohr CLI; fall back to the API only for operations the CLI doesn't support (member management, cost limits, renaming).

Projects are the organizational containers for Nodes, Jobs, Images, and Datasets — and the basic unit for team collaboration and cost management.

Authentication

"bohrium-project": {
  "enabled": true,
  "apiKey": "YOUR_ACCESS_KEY",
  "env": {
    "ACCESS_KEY": "YOUR_ACCESS_KEY"
  }
}

Prerequisites: Install bohr CLI

# macOS
/bin/bash -c "$(curl -fsSL https://dp-public.oss-cn-beijing.aliyuncs.com/bohrctl/1.0.0/install_bohr_mac_curl.sh)"

# Linux
/bin/bash -c "$(curl -fsSL https://dp-public.oss-cn-beijing.aliyuncs.com/bohrctl/1.0.0/install_bohr_linux_curl.sh)"

source ~/.bashrc  # or source ~/.zshrc
export PATH="$HOME/.bohrium:$PATH"

List Projects

bohr project list               # Table format
bohr project list --json        # JSON format
bohr project list --csv         # CSV format

JSON fields:

FieldDescription
--------------------
projectIdProject ID
nameProject name

Create Project

bohr project create -n "my-experiment"
bohr project create -n "my-experiment" -m 5000          # Monthly cost limit
bohr project create -n "my-experiment" -t 10000         # Total cost limit

Parameters:

ParameterShortRequiredDescription
-----------------------------------------
--name-nYesProject name (default "default")
--month_cost_limit-mNoMonthly cost limit
--total_cost_limit-tNoTotal cost limit

Delete Project

bohr project delete 154

> Warning: Deleting a project is irreversible — all jobs and images under the project will be removed and cannot be recovered.


Roles & Permissions

Bohrium projects have 3 roles:

RoleDescription
-------------------
CreatorThe user who created the project; exactly one per project, non-transferable
AdminAppointed by the creator; can have multiple; can be revoked at any time
MemberUsers added to the project; default role

Permission Matrix

ModulePermissionCreatorAdminMember
-------------------:-------::-----::------:
ProjectRename project
ProjectDelete project
MembersAdd/remove members
MembersPromote/demote admins
BudgetView/adjust project & member budgets
NodesView/manage all project nodes
JobsView/manage all project jobs
ImagesView/manage all project images
BillingView/download billing reports

> Important: Costs incurred by members are charged directly to the project creator's wallet balance.


Budget Management

Project Budget

Creators and admins can set the project's total budget (optional). If not set, the default is "unlimited".

When the project's total cost exceeds the budget, members cannot submit new jobs or start new nodes.

Member Budget

Individual spending limits can be assigned per member:

  • "Even split": Divide the project budget equally among all members
  • "Uniform": Set the same limit for each member
  • Manual: Set different limits for different members

Set project cost limit via API:

requests.post(f"{BASE}/set_cost_limit", headers=HEADERS_JSON,
    json={"projectId": 154, "costLimit": 5000})

Shared Resources

Shared Disk (/share)

Each project has 1TB of free shared storage with read/write access for all members.

  • Access the /share directory via Web Shell or the file management page
  • Data persists after node release
  • Additional capacity can be purchased

Shared Images

All project members can see custom images created by other members in the Bohrium Image Center, making it easy to share development environments.


Billing

ItemDescription
-------------------
Compute resourcesBilled by duration of resource usage; prices vary by configuration
Dev nodesBilled continuously while running; stop or delete when not in use
Personal storage (/personal)500GB free; additional capacity requires purchase
Project storage (/share)1TB free; additional capacity requires purchase
  • Account balance is deducted every 5 minutes
  • Warning email sent when balance drops below threshold (default ¥100)
  • Cannot submit new jobs when balance reaches zero

Quotas

ResourceLimit
-----------------
Projects4 per user (only self-created; joined projects don't count)
Nodes4 per user per project
Concurrent running jobs100 per user
Custom images10 per project
Project shared disk1TB per project
Personal data disk500GB per user per project

> Contact Bohrium support to increase quotas.


API Supplement (CLI Unsupported)

The following operations are not covered by the bohr CLI and require the API:

import os, requests

AK = os.environ.get("ACCESS_KEY", "")
BASE = "https://open.bohrium.com/openapi/v1/project"
HEADERS = {"accessKey": AK}
HEADERS_JSON = {**HEADERS, "Content-Type": "application/json"}

# Detailed project list (with cost, member count, etc.)
r = requests.get(f"{BASE}/list", headers=HEADERS)
# Returns: {items: [{id, name, totalCost, monthCost, userCount, projectRole, ...}]}

# Lightweight project list (id + name only)
r = requests.get(f"{BASE}/lite_list", headers=HEADERS)

# Rename project
requests.post(f"{BASE}/set_name", headers=HEADERS_JSON,
    json={"projectId": 154, "name": "new-name"})

# Set cost limit
requests.post(f"{BASE}/set_cost_limit", headers=HEADERS_JSON,
    json={"projectId": 154, "costLimit": 5000})

# View project members
r = requests.get(f"{BASE}/154/users", headers=HEADERS)
# Returns: {items: [{userId, userName, email, projectRole, cost, ...}]}

# Add member (by email)
requests.post(f"{BASE}/add_user", headers=HEADERS_JSON,
    json={"projectId": 154, "email": "user@example.com"})

# Remove member
requests.post(f"{BASE}/del_user", headers=HEADERS_JSON,
    json={"projectId": 154, "userId": 12345})

# Promote/demote admin
requests.post(f"{BASE}/manager/add", headers=HEADERS_JSON,
    json={"projectId": 154, "userId": 12345})
requests.post(f"{BASE}/manager/del", headers=HEADERS_JSON,
    json={"projectId": 154, "userId": 12345})

# Recover deleted member
requests.put(f"{BASE}/154/recovery_user", headers=HEADERS_JSON,
    json={"userId": 12345})

Project Role API Values

projectRoleMeaning
----------------------
1Creator / Admin
3Regular member

Unavailable Endpoints

The following endpoints are not accessible via openapi accessKey (return 404):

EndpointReason
------------------
POST /project/joinRoute forwarding path mismatch
POST /project/share_statusSame
GET /project/availableRegistered in AK v2 Group; unreachable via v1 accessKey

Troubleshooting

ProblemCauseSolution
--------------------------
Can't find newly created projectNew project is at end of listbohr project list --json to see all
Failed to remove memberWrong userIdGet userId via API /{id}/users first
Adding member has no effectEmail doesn't existEnsure target user is registered on Bohrium
Project count limit reachedMax 4 self-created projects per userDelete unused projects or contact support
Member can't submit jobsProject or member budget exceededCreator/admin adjusts budget
Insufficient balanceAccount balance is zeroTop up to resume usage

版本历史

共 1 个版本

  • v1.0.0 当前
    2026-05-23 16:52 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

Bohrium Job Management

sorrymaker0624
通过 bohr CLI 或 open.bohrium.com API 管理 Bohrium 计算任务。适用于用户询问在 Bohrium 上提交、列出、终止、删除计算任务或检查任务状态的情况。
★ 0 📥 246

Bohrium Knowledge Base Management

sorrymaker0624
Manage Bohrium knowledge bases via open.bohrium.com API. Use when: user asks about creating/listing/searching knowledge
★ 0 📥 252

Bohrium Dev Node Management

sorrymaker0624
通过 bohr CLI 或 open.bohrium.com API 管理 Bohrium 开发节点(容器/虚拟机)。适用时机:用户询问创建/启动/停止/删除开发机器。
★ 0 📥 244