Compare commits

...

9 Commits

Author SHA1 Message Date
d4cf0ca7e7 docs: add new acknowledgment 2025-07-26 14:58:58 +08:00
bc68869493 fix: [app] api message event name (#20) 2025-07-26 14:37:12 +08:00
ccee6dcde8 docs: update the step after service the starting (#18) 2025-07-26 14:34:37 +08:00
d9ec4f60e0 docs(frontend): use new doc styles (#17)
* docs: use new doc styles

* docs: use new doc styles

* docs: use new doc styles
2025-07-26 13:51:05 +08:00
9ca1ae506f docs(frontend): use new doc styles (#11)
* docs: use new doc styles

* docs: remove comment

* docs: remove comment

* docs: remove comment

---------

Co-authored-by: tecvan <tecvan.fe@gmail.com>
2025-07-26 12:36:38 +08:00
Ryo
d045dea008 Merge pull request #13 from coze-dev/fix/semantic_pr_check
fix(ci): wrong headerPattern
2025-07-26 11:49:38 +08:00
8e62e61c77 fix(ci): wrong headerPattern 2025-07-26 11:43:23 +08:00
ae6f57eade chore(comment): add open source license header 2025-07-25 20:48:44 +08:00
35d2f38110 chore(comment): add open source license header 2025-07-25 20:10:23 +08:00
167 changed files with 1513 additions and 921 deletions

View File

@ -1,73 +0,0 @@
name: "ci@backend pipeline"
trigger:
change:
paths:
- "backend/**"
jobs:
unit_test:
image: hub.byted.org/codebase/ci_go_1_24:latest
name: Unit Test
steps:
- id: mysql_scripts
name: mysql scripts
uses: actions/mysql-scripts@v1
inputs:
db_name: opencoze
host: mysql
path: "docker/atlas/migrations/*.sql"
user: root
password: root
- name: Go Test
uses: actions/codecov
inputs:
driver: go
commands:
- modules=`find . -name "go.mod" -exec dirname {} \;`
- echo $modules
- list=""
- coverpkg=""
- if [[ ! -f "go.work" ]];then go work init;fi
- for module in $modules; do go work use $module; list=$module"/... "$list; coverpkg=$module"/...,"$coverpkg; done
- go work sync
- go test -coverprofile=coverage.out -gcflags="all=-l -N" -coverpkg=$coverpkg $list
config:
status:
project:
opencoze:
minimum_coverage: 0%
paths:
- "!tests"
- "!examples/**"
- "!*/examples/**"
- "!*/mock/**"
- "!*/model/**"
diff:
eino:
line_limit: 10 # 增量行数少于多少行时,默认置成功
minimum_coverage: 0%
paths:
- "!tests"
- "!examples/**"
- "!*/examples/**"
- "!*/mock/**"
- "!*/model/**"
- name: Sonar
uses: actions/sonar@v1
inputs:
coverage_path: /tmp/coverage.out
coverage_type: go
disable_quality_gates: true
exclusions_list:
- "!tests"
- "examples/**"
- "*/mock/**"
- "*/model/**"
language: go
services:
- id: mysql
image: hub.byted.org/ee/mysql:8.0
envs:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: opencoze

View File

@ -1,180 +0,0 @@
name: CI@fe-master
trigger:
cron:
push:
branches: []
paths:
- "frontend/**"
types: [branch]
notification:
when: failure
# 搜索群名Bot Studio Monorepo CI 报警群
to: ['7350862409475031044']
manual:
notification:
when: failure
jobs:
lint: &base_job
runs-on:
env: online
name: Lint
image: hub.byted.org/base/bot_monorepo_ci_env:ae543e9bbc6d8155cffbd8f5ed27fb73
# 从最近的 CI 执行记录看install 步骤有概率会等待超时
# 目前已 oncall这里先设置一个超时时间避免阻塞
timeout: 30
envs:
RUSH_BUILD_CACHE_WRITE_ALLOWED: ${{RUSH_BUILD_CACHE_WRITE_ALLOWED}}
RUSH_BUILD_CACHE_ENABLED: ${{RUSH_BUILD_CACHE_ENABLED}}
RUSH_BUILD_CACHE_CREDENTIAL: ${{RUSH_BUILD_CACHE_CREDENTIAL}}
ACCESS_TOKEN: ${{CI_BOT_ACCESS_TOKEN}}
CI: 'true'
RUN_BYTEST_COV: 'false' # disable Jupiter default behavior of invoke bytestcov
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 'true'
CYPRESS_INSTALL_BINARY: '0'
TAIKO_SKIP_CHROMIUM_DOWNLOAD: '0'
RE2_DOWNLOAD_SKIP_PATH: '1'
RE2_DOWNLOAD_MIRROR: https://bnpm.bytedance.net/mirrors
# https://typescript-eslint.io/packages/parser/#allowautomaticsingleruninference
TSESTREE_SINGLE_RUN: 'true'
# 使用云盘缓存https://bytedance.larkoffice.com/wiki/A60lwgolSinteMkOz71cFPvFneg
# TODO:不同job的缓存key暂时使用同一个后续可以考虑区分
caches:
- backend: ebs
key: bot-studio-monorepo-master-v2-lint
size: 256
steps:
- &checkout_step
id: Checkout
uses: actions/checkout
inputs:
depth: 1
- &proxy_step
name: SetupProxy
commands:
- bash .codebase/scripts/env.sh
- &init_env_step
name: Initialization
commands:
- printenv
- git config user.name ci_flow
- git config user.email ci_flow@bytedance.com
- &install_deps_step
name: Install dependencies
commands:
- node common/scripts/install-run-rush.js install
# 暂时不启用因为eslintignore文件移除会导致解析报错后期接入可考虑动态读取eslint ignore配置
# - name: PreLint
# parallel-with-next-step: true
# commands:
# - npx oxlint@latest -A all .
- name: Lint
commands:
- NODE_OPTIONS="--max-old-space-size=4096" node common/scripts/install-run-rush.js lint
ts_check:
<<: *base_job
name: Check TS Type
timeout: 30
caches:
- backend: ebs
key: bot-studio-monorepo-master-v2-ts-check
size: 256
steps:
- *checkout_step
- *proxy_step
- *init_env_step
- *install_deps_step
- name: Check TS Type
commands:
- node common/scripts/install-run-rush.js ts-check -v
build:
<<: *base_job
name: Build
caches:
- backend: ebs
key: bot-studio-monorepo-master-v2-build
size: 256
steps:
- *checkout_step
- *proxy_step
- *init_env_step
- *install_deps_step
- name: Build
commands:
- CUSTOM_VERSION=release REGION=sg BUILD_BRANCH=test node common/scripts/install-run-rush.js build -v
test:
<<: *base_job
caches:
- backend: ebs
key: bot-studio-monorepo-master-v2-test
size: 256
name: Test
services:
# 下面启动一个mysql和mongo服务主要用于coze.hub.core相关服务的集成测试
# id需要保持跟代码中连接的host一致
- id: hub_mysql
image: hub.byted.org/ee/mysql:5.7
envs:
MYSQL_ROOT_PASSWORD: test
MYSQL_DATABASE: coze_hub
MYSQL_USER: test
MYSQL_PASSWORD: test
MYSQL_TCP_PORT: 3306
- id: hub_mongo
image: hub.byted.org/ee/mongo:4.0.24
commands:
- mongod --replSet rs0
- id: mongo-init
image: hub.byted.org/ee/mongo:4.0.24
commands:
- sleep 10s
- mongo mongodb://127.0.0.1:27017 --eval 'rs.initiate()'
steps:
- *checkout_step
- *proxy_step
- *init_env_step
- *install_deps_step
- name: wait mongo ready
uses: actions/mongodb-scripts
inputs:
host: 127.0.0.1
port: 27017
- name: wait mysql ready
uses: actions/mysql-scripts
inputs:
host: hub_mysql
user: test
password: test
commands:
- mysql -u test -ptest -h hub_mysql -P 3306 -e 'show databases;'
# 服务发现
- id: consul
uses: actions/setup-consul
- name: Test Coverage
id: test
commands:
- node common/scripts/install-run-rush.js test:cov -v
# https://bytedance.feishu.cn/wiki/wikcn9Z4azEdfJalVPKcOs9vxsR
security_scan:
<<: *base_job
name: Security Scan
caches:
- backend: ebs
key: bot-studio-monorepo-master-v2-scan
size: 256
steps:
- *checkout_step
- *proxy_step
- *init_env_step
- *install_deps_step
- name: build
commands:
- CUSTOM_VERSION=release REGION=sg node common/scripts/install-run-rush.js build -o app-botstudio-main -v
- id: Argus
commands:
- npm i @ies/argus-scan@0.30.37 -g
- bash .codebase/scripts/argus-scan.sh

View File

@ -1,89 +0,0 @@
name: CI@fe-tsc
trigger:
manual:
change:
# 临时支持 project-ide 项目需求,临时修改为如下格式
# 后续需调整回 integration/**
types: [create, push, restore]
paths:
- "frontend/**"
notification:
when: failure
jobs:
ts_check: &base_job
runs-on:
env: online
image: hub.byted.org/base/bot_monorepo_ci_env:ae543e9bbc6d8155cffbd8f5ed27fb73
# 从最近的 CI 执行记录看install 步骤有概率会等待超时
# 目前已 oncall这里先设置一个超时时间避免阻塞
timeout: 30
if: ${{ !Event.Change.IsPreSubmit }}
envs:
targetBranch: ${{Event.Change.Target.Branch}}
RUSH_BUILD_CACHE_WRITE_ALLOWED: ${{RUSH_BUILD_CACHE_WRITE_ALLOWED}}
RUSH_BUILD_CACHE_ENABLED: ${{RUSH_BUILD_CACHE_ENABLED}}
RUSH_BUILD_CACHE_CREDENTIAL: ${{RUSH_BUILD_CACHE_CREDENTIAL}}
ACCESS_TOKEN: ${{CI_BOT_ACCESS_TOKEN}}
CI: 'true'
RUN_BYTEST_COV: 'false'
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 'true'
CYPRESS_INSTALL_BINARY: '0'
TAIKO_SKIP_CHROMIUM_DOWNLOAD: '0'
RE2_DOWNLOAD_SKIP_PATH: '1'
RE2_DOWNLOAD_MIRROR: https://bnpm.bytedance.net/mirrors
MERGE_REQUEST_TITLE: ${{Event.Change.Title}}
TSESTREE_SINGLE_RUN: 'true'
steps:
- &checkout_step
name: Checkout
uses: actions/checkout
inputs:
submodules: true
depth: 1
- &proxy_step
name: SetupProxy
commands:
- bash .codebase/scripts/env.sh
- &remote_info_step
id: RemoteInfo
uses: 'actions/mr-remote-info'
inputs:
info_list: ['behind_commits', 'changed_files', 'changed_files_path']
- &cache_step
id: Cache
uses: actions/cache
inputs:
key: flow-monorepo-${{Event.Change.Source.Branch}}
paths:
- common/temp/pnpm-store
restore_keys:
- flow-monorepo-${{Event.Change.Source.Branch}}
- flow-monorepo-store-master
- &init_env_step
id: InitEnv
name: Initialization
commands:
- printenv
- git config user.name ci_flow
- git config user.email ci_flow@bytedance.com
- npm config set registry=https://registry.npmjs.org
- pnpm config set network-concurrency 32
- echo "$(<${{Steps.RemoteInfo.Outputs.changed_files_path}})"
- echo "::set-output name=ShouldRunBuild::${{ Event.Change.IsPreSubmit || int(Steps.RemoteInfo.Outputs.behind_commits) <= 6 }}"
- &install_deps_step
name: Install dependencies
commands:
- npx why-is-node-running@v2.x common/scripts/install-run-rush.js increment --action install -p ${{Steps.RemoteInfo.Outputs.changed_files_path}}
- name: Prepare basic packages
commands:
- node common/scripts/install-run-rush.js pre-build -v
- name: Check TS Type
commands:
- node common/scripts/install-run-rush.js increment --action ts-check -p ${{Steps.RemoteInfo.Outputs.changed_files_path}}

View File

@ -1,184 +0,0 @@
name: CI@fe
trigger:
manual:
change:
source-branches: ['!release/**', '!task/**']
types: [create, push, restore]
paths:
- "frontend/**"
notification:
when: failure
jobs:
lint: &base_job
runs-on:
env: online
image: hub.byted.org/base/bot_monorepo_ci_env:ae543e9bbc6d8155cffbd8f5ed27fb73
# 从最近的 CI 执行记录看install 步骤有概率会等待超时
# 目前已 oncall这里先设置一个超时时间避免阻塞
timeout: 30
if: ${{ !Event.Change.IsPreSubmit }}
envs:
targetBranch: ${{Event.Change.Target.Branch}}
RUSH_BUILD_CACHE_WRITE_ALLOWED: ${{RUSH_BUILD_CACHE_WRITE_ALLOWED}}
RUSH_BUILD_CACHE_ENABLED: ${{RUSH_BUILD_CACHE_ENABLED}}
RUSH_BUILD_CACHE_CREDENTIAL: ${{RUSH_BUILD_CACHE_CREDENTIAL}}
ACCESS_TOKEN: ${{CI_BOT_ACCESS_TOKEN}}
CI: 'true'
RUN_BYTEST_COV: 'false'
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 'true'
CYPRESS_INSTALL_BINARY: '0'
TAIKO_SKIP_CHROMIUM_DOWNLOAD: '0'
BUILD_BRANCH: ${{Event.Change.Source.Branch}}
RE2_DOWNLOAD_SKIP_PATH: '1'
MERGE_REQUEST_TITLE: ${{Event.Change.Title}}
TSESTREE_SINGLE_RUN: 'true'
caches:
- backend: ebs
key: bot-studio-monorepo-ci-v2-lint
size: 256
steps:
- &checkout_step
name: Checkout
uses: actions/checkout
inputs:
submodules: true
depth: 1
- &proxy_step
name: SetupProxy
commands:
- bash .codebase/scripts/env.sh
- &remote_info_step
id: RemoteInfo
uses: 'actions/mr-remote-info'
inputs:
info_list: ['behind_commits', 'changed_files', 'changed_files_path']
- &cache_step
id: Cache
uses: actions/cache
inputs:
key: flow-monorepo-${{Event.Change.Source.Branch}}
paths:
- common/temp/pnpm-store
- packages/arch/idl/src/auto-generated
restore_keys:
- flow-monorepo-${{Event.Change.Source.Branch}}
- flow-monorepo-store-master
- &init_env_step
id: InitEnv
name: Initialization
commands:
- printenv
- git config user.name ci_flow
- git config user.email ci_flow@bytedance.com
- npm config set registry=https://registry.npmjs.org
- pnpm config set network-concurrency 32
- echo "$(<${{Steps.RemoteInfo.Outputs.changed_files_path}})"
- echo "::set-output name=ShouldRunBuild::${{ Event.Change.IsPreSubmit || int(Steps.RemoteInfo.Outputs.behind_commits) <= 6 }}"
- &install_deps_step
name: Install dependencies
commands:
- npx why-is-node-running@v2.x common/scripts/install-run-rush.js increment --action install -p ${{Steps.RemoteInfo.Outputs.changed_files_path}}
- name: Check Lint
commands:
- node common/scripts/install-run-rush.js increment --action lint -p ${{Steps.RemoteInfo.Outputs.changed_files_path}}
style_check:
<<: *base_job
caches:
- backend: ebs
key: bot-studio-monorepo-ci-v2-style-check
size: 256
name: Check Stylelint
steps:
- *checkout_step
- *proxy_step
- *remote_info_step
- *cache_step
- *init_env_step
- *install_deps_step
- name: Check Stylelint
commands:
- node common/scripts/install-run-rush.js increment --action style -p ${{Steps.RemoteInfo.Outputs.changed_files_path}}
build:
<<: *base_job
caches:
- backend: ebs
key: bot-studio-monorepo-ci-v2-build
size: 256
name: Build
timeout: 20
steps:
- *checkout_step
- *proxy_step
- *remote_info_step
- *cache_step
- *init_env_step
- *install_deps_step
- name: Build
id: build
if: ${{ Steps.InitEnv.Outputs.ShouldRunBuild }}
commands:
- node common/scripts/install-run-rush.js increment --action build -p ${{Steps.RemoteInfo.Outputs.changed_files_path}}
test:
<<: *base_job
caches:
- backend: ebs
key: bot-studio-monorepo-ci-v2-test
size: 256
name: Test Coverage
services:
# 下面启动一个mysql和mongo服务主要用于coze.hub.core相关服务的集成测试
# id需要保持跟代码中连接的host一致
- id: hub_mysql
image: hub.byted.org/ee/mysql:5.7
envs:
MYSQL_ROOT_PASSWORD: test
MYSQL_DATABASE: coze_hub
MYSQL_USER: test
MYSQL_PASSWORD: test
MYSQL_TCP_PORT: 3306
- id: hub_mongo
image: hub.byted.org/ee/mongo:4.0.24
commands:
- mongod --replSet rs0
- id: mongo-init
image: hub.byted.org/ee/mongo:4.0.24
commands:
- sleep 10s
- mongo mongodb://127.0.0.1:27017 --eval 'rs.initiate()'
steps:
- *checkout_step
- *proxy_step
- *remote_info_step
- *cache_step
- *init_env_step
- *install_deps_step
- name: wait mongo ready
uses: actions/mongodb-scripts
inputs:
host: 127.0.0.1
port: 27017
- name: wait mysql ready
uses: actions/mysql-scripts
inputs:
host: hub_mysql
user: test
password: test
commands:
- mysql -u test -ptest -h hub_mysql -P 3306 -e 'show databases;'
# 服务发现
- id: consul
uses: actions/setup-consul
- name: Test Coverage
commands:
- git fetch --filter=blob:none --unshallow -q
- node common/scripts/install-run-rush.js increment --action test:cov -p ${{Steps.RemoteInfo.Outputs.changed_files_path}}

View File

@ -1,14 +0,0 @@
#!/bin/bash
set -ex
# 暂时只扫描 app-botstudio-main 项目的产物
result=$(argus scm -c apps/bot/dist_sg/static -n obric/cloud/bot_studio_oversea -l)
if echo "$result" | grep -q '::add-message level=error:::'; then
if [ "$CI" ]; then
echo '::add-message level=info::本地验证命令:`npm install -g @ies/argus-scan@0.30.37 && REGION=sg CUSTOM_VERSION=release rush build -o app-botstudio-main && argus scm -c apps/bot/dist_sg/static -n obric/cloud/bot_studio_oversea -l`'
fi
exit 1
else
exit 0
fi

View File

@ -1,16 +0,0 @@
#!/bin/bash
set -ex
SOURCE_BRANCH=${SOURCE_BRANCH}
TARGET_BRANCH=${targetBranch}
if [[ $TARGET_BRANCH == "master" && !($SOURCE_BRANCH =~ ^release/ || $SOURCE_BRANCH =~ ^hotfix/ || $SOURCE_BRANCH =~ ^task/ || $SOURCE_BRANCH =~ ^fix/) ]]; then
# 检查$SOURCE_BRANCH是否以'release/'或'hotfix/'或'task/'或'fix/'开头
LATEST_BRANCH="release/$(date -d '+8 hour' +%Y%m%d)"
CONCLUSION="{\"name\": \"Target Branch\", \"conclusion\": \"failed\", \"output\":{\"summary\":\"Error: Please don't merge to master directly, use [$LATEST_BRANCH](https://code.byted.org/obric/bot-studio-monorepo/commits/$LATEST_BRANCH) instead.\n You can contact [@fanwenjie.fe](https://code.byted.org/fanwenjie.fe) to skip this error.\" }}"
else
CONCLUSION="{\"name\": \"Target Branch\", \"conclusion\": \"success\", \"output\":{\"summary\":\"Good Pratice\" }}"
fi
echo $CONCLUSION >>check-merge-target.log
echo "::update-check-run::check-merge-target.log"

View File

@ -1,55 +0,0 @@
#!/bin/bash
set -ex
# Your target branch
TARGET_BRANCH=$targetBranch
if [[ ${SOURCE_BRANCH} =~ ^integration/ || ${SOURCE_BRANCH} =~ ^release/ ]]; then
# integration -> xxx or release/xxx -> master SKIP check-mr-size.
echo "::add-message level=info::SKIP check-mr-size"
exit 0
fi
# Specify the pattern you want to exclude, using *space* as the separator
EXCLUDE_PATTERNS=(
'**/pnpm-lock.yaml'
'packages/arch/bot-api/src/auto-generate/**'
'apps/bot-op/src/services/bam-auto-generate/**'
'apps/prompt-platform/src/services/auto-generate/**'
"**/lib/**"
"**/.*/**"
'**/__tests__/**'
'**/__test__/**'
"**/__mocks__/**"
"**/__mock__/**"
"**/*.test.*/**"
"**/*.spec.*/**"
"**/__snapshots__/**"
"**/*.snap"
'**/*.svg'
'ee/e2e/bot-studio/**'
'common/changes/**'
'apps/fornax/**'
"apps/api-builder/**"
"packages/api-builder/**"
)
for pattern in "${EXCLUDE_PATTERNS[@]}"; do
EXCLUDE_STRING+=":(exclude)$pattern "
done
# Count the number of files changed but exclude certain files and folders
file_changes=$(git diff --name-only "origin/$TARGET_BRANCH..." $EXCLUDE_STRING | wc -l)
# Count the number of line changes but exclude certain files and folders
line_changes=$(git diff --shortstat "origin/$TARGET_BRANCH..." $EXCLUDE_STRING | awk '{print ($4>$6)?$4:$6}')
# Check if number of changed files is greater than 100 or if number of line changes is greater than 2000
if [ "$file_changes" -gt 100 ] || [ "$line_changes" -gt 2000 ]; then
CONCLUSION="{\"name\": \"MR Size\", \"conclusion\": \"failed\", \"output\":{\"summary\":\"Error: Too many changes. Number of changed files is **""$file_changes""**, number of changed lines is **""$line_changes""**.\n You can contact [@fanwenjie.fe](https://code.byted.org/fanwenjie.fe) to skip this error.\" }}"
else
CONCLUSION="{\"name\": \"MR Size\", \"conclusion\": \"success\", \"output\":{\"summary\":\"Good\" }}"
fi
echo $CONCLUSION >>check-mr-size.log
echo "::update-check-run::check-mr-size.log"

View File

@ -1,14 +0,0 @@
#!/bin/bash
set -ex
PRE_COMMITS=$1
# 按 codebase 给出的口径pre commits 超过 5 时容易导致 rebase 失败,因此主动给出警告,避免进入 CQ 后被弹出
if [ $PRE_COMMITS -gt 5 ]; then
CONCLUSION="{\"name\": \"Pre Commits Check\", \"conclusion\": \"failed\", \"output\":{\"summary\":\"分支已落后目标分支较多,非常容易导致进入 CQ 后被弹出,请执行 rebase/merge 同步代码后重试。\" }}"
else
CONCLUSION="{\"name\": \"Pre Commits Check\", \"conclusion\": \"success\", \"output\":{\"summary\":\"good\" }}"
fi
echo $CONCLUSION >> check-pre-commits.log
echo "::update-check-run::check-pre-commits.log"

View File

@ -1,54 +0,0 @@
#!/bin/bash
set -ex
basename=$(basename "$CHANGE_URL")
lastParam=$(echo "$basename" | cut -d'/' -f1)
targetBranch="${targetBranch}"
sourceBranch="${SOURCE_BRANCH}"
mrTitle="${MR_TITLE}"
mrDescription="${MR_DESCRIPTION}"
echo "::set-output name=mrId::$lastParam" # 输出 lastParam 的值
result=$(curl --location "https://code.byted.org/api/v4/projects/548801/merge_requests/$lastParam" \
--header "Private-Token: $GITLAB_TOKEN")
commits=$(curl --location "https://code.byted.org/api/v4/projects/548801/merge_requests/$lastParam/commits" \
--header "Private-Token: $GITLAB_TOKEN")
isSquash=$(echo "$result" | jq -r '.squash') # 使用jq提取isSquash的值
commitsCount=$(echo "$commits" | jq length)
echo "::set-output name=squash::$isSquash" # 输出 isSquash 的值
echo "::set-output name=commitsCount::$commitsCount" # 输出 commitsCount 的值
if [[ $isSquash == true ]]; then
# 勾选squash
if [[ $sourceBranch == release/* && $targetBranch == master ]]; then
echo "::add-message level=error::**release 分支合入 master 时,不可开启 squash **"
exit 1
fi
if [[ $mrDescription == \[no-squash\]* ]]; then
echo "::add-message level=error::**当前 MR 勾选了 Squash 选项,但是描述中包含[no-squash]**"
exit 1
fi
else
# 没有勾选squash
if [[ $mrDescription == \[no-squash\]* ||
$commitsCount -le 1 ||
$mrTitle == WIP:* ||
$mrTitle == wip:* ||
$sourceBranch == release/* ]]; then
exit 0
fi
echo "::add-message level=error::**当前 MR 应该勾选 Squash 选项**"
exit 1
fi

View File

@ -1,53 +0,0 @@
const fs = require('fs/promises');
const path = require('path');
const crypto = require('crypto');
// node scripts/checksum-by-change.js /usr/changed-path.json
// change-path 文件来自 ci
const changedPath = process.argv[2];
const readJson = async jsonFile => {
const content = await fs.readFile(jsonFile, 'utf-8');
let _val = null;
try {
eval(`_val = ${content}`);
return _val;
} catch (e) {
console.error(`json parse failure: `, e);
}
};
const readChangedPackages = async changedPath => {
const [changedFiles, { projects }] = await Promise.all([
readJson(changedPath),
readJson(path.resolve(__dirname, '../../rush.json')),
]);
const changedProjects = projects
.filter(project => {
const { projectFolder } = project;
const endsWithSlash = projectFolder.endsWith('/');
const compareFolder = `${projectFolder}${endsWithSlash ? '' : '/'}`;
if (!changedFiles) {
// changed-path.json 内容可能为null
return true;
}
const matched = changedFiles.find(file => file.startsWith(compareFolder));
return !!matched;
})
.map(({ packageName }) => packageName)
.sort((r1, r2) => r1.localeCompare(r2));
return changedProjects;
};
async function main() {
if (!changedPath || changedPath.length <= 0) {
throw new Error(`Please pass the correct "changedPath" path`);
}
const changedPackages = await readChangedPackages(changedPath);
const hash = crypto.createHash('md5');
changedPackages.forEach(r => hash.update(r));
const hashValue = hash.digest('hex');
console.log(`::set-output name=hash::${hashValue}`);
}
main();

View File

@ -1,26 +0,0 @@
#!/usr/bin/env bash
echo ::set-env name=no_proxy::cn.goofy.app,.cn.goofy.app,goofy.app,.goofy.app,localhost,.byted.org,byted.org,.bytedance.net,bytedance.net,127.0.0.1,127.0.0.0/8,169.254.0.0/16,100.64.0.0/10,172.16.0.0/12,192.168.0.0/16,10.0.0.0/8,::1,fe80::/10,fd00::/8
echo ::set-env name=all_proxy::http://sys-proxy-rd-relay.byted.org:3128
echo ::set-env name=http_proxy::http://sys-proxy-rd-relay.byted.org:3128
echo ::set-env name=https_proxy::http://sys-proxy-rd-relay.byted.org:3128
#!/usr/bin/env bash
# Setup common env for CI & SCM
# 1. 忽略不影响构建的 install
export PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD=true
export CYPRESS_INSTALL_BINARY=0
export TAIKO_SKIP_CHROMIUM_DOWNLOAD=0
export CUSTOM_VERSION="inhouse"
export RE2_DOWNLOAD_SKIP_PATH=1
export RE2_DOWNLOAD_MIRROR="https://bnpm.bytedance.net/mirrors"
export PUPPETEER_SKIP_DOWNLOAD=true
# 2. 在 CI 环境生效:
echo ::set-env name=PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD::$PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD
echo ::set-env name=CYPRESS_INSTALL_BINARY::$CYPRESS_INSTALL_BINARY
echo ::set-env name=TAIKO_SKIP_CHROMIUM_DOWNLOAD::$TAIKO_SKIP_CHROMIUM_DOWNLOAD
echo ::set-env name=RE2_DOWNLOAD_SKIP_PATH::$RE2_DOWNLOAD_SKIP_PATH
echo ::set-env name=RE2_DOWNLOAD_MIRROR::$RE2_DOWNLOAD_MIRROR
echo ::set-env name=PUPPETEER_SKIP_DOWNLOAD::$PUPPETEER_SKIP_DOWNLOAD

View File

@ -21,5 +21,10 @@ header:
- '**/gorm_gen/**'
- '**/kitex_gen/**'
- '**/*.gen.go'
- '**/gen.go'
- 'backend/api/**'
- '**/*_mock.go'
- 'backend/internal/mock/**'
- '**/mock/**'
files:
- ../backend/go.mod

View File

@ -10,7 +10,6 @@ EXCLUDE_PATTERNS=(
'packages/arch/bot-api/src/auto-generate/**'
'apps/bot-op/src/services/bam-auto-generate/**'
'apps/prompt-platform/src/services/auto-generate/**'
".cursor/api/**"
"**/lib/**"
"**/.*/**"
'**/__tests__/**'
@ -24,9 +23,7 @@ EXCLUDE_PATTERNS=(
'**/e2e/**'
'common/changes/**'
'apps/fornax/**',
"packages/arch/semi-theme-hand01",
"packages/arch/arco-icon",
"packages/arch/resources/**"
"packages/arch/semi-theme-hand01"
)
for pattern in "${EXCLUDE_PATTERNS[@]}"; do

View File

@ -57,6 +57,8 @@ jobs:
model
database
foundation
comment
ci
# The pull request's title should be fulfilled the following pattern:
#
@ -65,5 +67,5 @@ jobs:
# ... where valid types and scopes can be found above; for example:
#
# [fix][test] flaky test V1_ProxyAuthenticationTest.anonymousSocketTest
headerPattern: '^\[(\w*?)\](?:\[(.*?)\])?(?:\s*)(.*)$'
# headerPattern: '^\[(\w*?)\](?:\[(.*?)\])?(?:\s*)(.*)$'
headerPatternCorrespondence: type, scope, subject

3
.gitignore vendored
View File

@ -49,3 +49,6 @@ node_modules
common/temp
.rush
.eslintcache
backend/conf/model/*.yaml

View File

@ -17,12 +17,12 @@ English | [中文](README.zh_CN.md)
## What is Coze Studio?
[Coze Studio](https://www.coze.cn/home) is an all-in-one AI agent development tool. Providing the latest large models and tools, various development modes and frameworks, Coze Studio offers the most convenient AI agent development environment, from development to deployment. Tens of thousands of enterprises and millions of developers are using Coze Studio.
[Coze Studio](https://www.coze.cn/home) is an all-in-one AI agent development tool. Providing the latest large models and tools, various development modes and frameworks, Coze Studio offers the most convenient AI agent development environment, from development to deployment.
* **Provides all core technologies needed for AI agent development**: prompt, RAG, plugin, workflow, enabling developers to focus on creating the core value of AI.
* **Ready to use for professional AI agent development at the lowest cost**: Coze Studio provides developers with complete app templates and build frameworks, allowing you to quickly construct various AI agents and turn creative ideas into reality.
Coze Studio is the open-source version of ByteDance's new AI agent development platform **Coze**. Through Coze Studio's visual design and build tools, developers can quickly create and debug agents, apps, and workflows using no-code or low-code approaches, enabling powerful AI app development and more customized business logic. It's an ideal choice for building low-code AI products tailored . Coze Studio aims to lower the threshold for AI agent development and application, encouraging community co-construction and sharing for deeper exploration and practice in the AI field.
Coze Studio, derived from the "Coze Development Platform" which has served tens of thousands of enterprises and millions of developers, we have made its core engine completely open. It is a one-stop visual development tool for AI Agents that makes creating, debugging, and deploying AI Agents unprecedentedly simple. Through Coze Studio's visual design and build tools, developers can quickly create and debug agents, apps, and workflows using no-code or low-code approaches, enabling powerful AI app development and more customized business logic. It's an ideal choice for building low-code AI products tailored . Coze Studio aims to lower the threshold for AI agent development and application, encouraging community co-construction and sharing for deeper exploration and practice in the AI field.
The backend of Coze Studio is developed using Golang, the frontend uses React + TypeScript, and the overall architecture is based on microservices and built following domain-driven design (DDD) principles. Provide developers with a high-performance, highly scalable, and easy-to-customize underlying framework to help them address complex business needs.
## Feature list
@ -74,6 +74,7 @@ Deployment steps:
cp .env.example .env
docker compose --profile '*' up -d
```
4. After starting the service, you can open Coze Studio by accessing `http://localhost:8888/` through your browser.
## Developer Guide
@ -116,4 +117,5 @@ Thank you to all the developers and community members who have contributed to th
* LLM integration support provided by the Eino framework team
* High-performance framework developed by the Cloudwego team
* High-quality workflow building engine developed by the [FlowGram](https://github.com/bytedance/flowgram.ai) team
* All users who participated in testing and feedback

View File

@ -17,12 +17,12 @@
## 什么是 Coze Studio
[Coze Studio](https://www.coze.cn/home) 是一站式 AI Agent 开发工具。提供各类最新大模型和工具、多种开发模式和框架,从开发到部署,为你提供最便捷的 AI Agent 开发环境。上万家企业、数百万开发者正在使 Coze Studio。
[Coze Studio](https://www.coze.cn/home) 是一站式 AI Agent 开发工具。提供各类最新大模型和工具、多种开发模式和框架,从开发到部署,为你提供最便捷的 AI Agent 开发环境。
* **提供 AI Agent 开发所需的全部核心技术**Prompt、RAG、Plugin、Workflow使得开发者可以聚焦创造 AI 核心价值。
* **开箱即用,用最低的成本开发最专业的 AI Agent**Coze Studio 为开发者提供了健全的应用模板和编排框架,你可以基于它们快速构建各种 AI Agent ,将创意变为现实。
Coze Studio 是字节跳动新一代 AI Agent 开发平台**扣子Coze**的**开源版本**。通过 Coze Studio 提供的可视化设计与编排工具,开发者可以通过零代码或低代码的方式,快速打造和调试智能体、应用和工作流,实现强大的 AI 应用开发和更多定制化业务逻辑,是构建低代码 AI 产品的理想选择。Coze Studio 致力于降低 AI Agent 开发与应用门槛,鼓励社区共建和分享交流,助你在 AI 领域进行更深层次的探索与实践。
Coze Studio,源自服务了上万家企业、数百万开发者的「扣子开发平台」,我们将它的核心引擎完全开放。它是一个一站式的 AI Agent 可视化开发工具,让 AI Agent 的创建、调试和部署变得前所未有的简单。通过 Coze Studio 提供的可视化设计与编排工具,开发者可以通过零代码或低代码的方式,快速打造和调试智能体、应用和工作流,实现强大的 AI 应用开发和更多定制化业务逻辑,是构建低代码 AI 产品的理想选择。Coze Studio 致力于降低 AI Agent 开发与应用门槛,鼓励社区共建和分享交流,助你在 AI 领域进行更深层次的探索与实践。
Coze Studio 的后端采用 Golang 开发,前端使用 React + TypeScript整体基于微服务架构并遵循领域驱动设计DDD原则构建。为开发者提供一个高性能、高扩展性、易于二次开发的底层框架助力开发者应对复杂的业务需求。
## 功能清单
@ -73,7 +73,7 @@ Coze Studio 的后端采用 Golang 开发,前端使用 React + TypeScript
cp .env.example .env
docker compose --profile '*' up -d
```
4. 启动服务后,通过浏览器访问 `http://localhost:8888/` 即可打开 Coze Studio。
## 开发指南
@ -115,4 +115,5 @@ Coze Studio 的后端采用 Golang 开发,前端使用 React + TypeScript
* Eino 框架团队提供的 LLM 集成支持
* Cloudwego 团队开发的高性能框架
* [FlowGram](https://github.com/bytedance/flowgram.ai) 团队开发的高质量流程搭建引擎
* 所有参与测试和反馈的用户

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package agentrun
type Tool struct {

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package connector
import "github.com/coze-dev/coze-studio/backend/api/model/ocean/cloud/developer_api"

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package conversation
import "github.com/coze-dev/coze-studio/backend/api/model/conversation/common"

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package database
type OperateType int64

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package database
import (

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package knowledge
import (

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package message
import (

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package plugin
import "github.com/getkin/kin-openapi/openapi3"

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package plugin
import (

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package plugin
import (

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package plugin
type ExecuteToolOption struct {

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package plugin
import (

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package plugin
import (

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package plugin
import (

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package search
import (

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package search
import (

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package singleagent
import (

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package variables
import (

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package appinfra
import (

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package appinfra
import (

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package modelmgr
import (

View File

@ -34,13 +34,13 @@ const (
type RunEvent string
const (
RunEventCreated RunEvent = "conversation.run.created"
RunEventInProgress RunEvent = "conversation.run.in_progress"
RunEventCompleted RunEvent = "conversation.run.completed"
RunEventFailed RunEvent = "conversation.run.failed"
RunEventExpired RunEvent = "conversation.run.expired"
RunEventCancelled RunEvent = "conversation.run.cancelled"
RunEventRequiredAction RunEvent = "conversation.run.required_action"
RunEventCreated RunEvent = "conversation.chat.created"
RunEventInProgress RunEvent = "conversation.chat.in_progress"
RunEventCompleted RunEvent = "conversation.chat.completed"
RunEventFailed RunEvent = "conversation.chat.failed"
RunEventExpired RunEvent = "conversation.chat.expired"
RunEventCancelled RunEvent = "conversation.chat.cancelled"
RunEventRequiredAction RunEvent = "conversation.chat.required_action"
RunEventMessageDelta RunEvent = "conversation.message.delta"
RunEventMessageCompleted RunEvent = "conversation.message.completed"

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package model
type SliceStatus int32

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package model
import "github.com/coze-dev/coze-studio/backend/domain/knowledge/entity"

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package entry
import (

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package modelmgr
type ParameterName string

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package modelmgr
import (

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package modelmgr
import (

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package sandbox
import (

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package static
import (

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package crypto
import (

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import SelectTeamPlugin from '../_plugins/SelectTeamPlugin';
import SetDefaultAuthorPlugin from '../_plugins/SetDefaultAuthorPlugin';
import type { IConfig } from '../../autoinstallers/plugins/node_modules/rush-init-project-plugin';

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { type PluginRegistryEntry } from '@coze-common/chat-area';
import { type PluginBizContext } from './types/biz-context';

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import {
PluginMode,
PluginName,

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { type ReadonlyAppLifeCycleServiceGenerator } from '@coze-common/chat-area';
import { type PluginBizContext } from '../../types/biz-context';

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { type ReadonlyCommandLifeCycleServiceGenerator } from '@coze-common/chat-area';
import { type PluginBizContext } from '../../types/biz-context';

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { type ReadonlyLifeCycleServiceGenerator } from '@coze-common/chat-area';
import { type PluginBizContext } from '../../types/biz-context';

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { type ReadonlyMessageLifeCycleServiceGenerator } from '@coze-common/chat-area';
import { type PluginBizContext } from '../../types/biz-context';

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { type ReadonlyRenderLifeCycleServiceGenerator } from '@coze-common/chat-area';
import { type PluginBizContext } from '../../types/biz-context';

View File

@ -1 +1,17 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
export type PluginBizContext = Record<string, unknown>;

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { defineConfig } from '@coze-arch/vitest-config';
export default defineConfig({

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import SelectTeamPlugin from '../_plugins/SelectTeamPlugin';
import SetDefaultAuthorPlugin from '../_plugins/SetDefaultAuthorPlugin';
import type { IConfig } from '../../autoinstallers/plugins/node_modules/rush-init-project-plugin';

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { type PluginRegistryEntry } from '@coze-common/chat-area';
import { type PluginBizContext } from './types/biz-context';

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import {
PluginMode,
PluginName,

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { type WriteableAppLifeCycleServiceGenerator } from '@coze-common/chat-area';
import { type PluginBizContext } from '../../types/biz-context';

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { type WriteableCommandLifeCycleServiceGenerator } from '@coze-common/chat-area';
import { type PluginBizContext } from '../../types/biz-context';

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { type WriteableLifeCycleServiceGenerator } from '@coze-common/chat-area';
import { type PluginBizContext } from '../../types/biz-context';

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { type WriteableMessageLifeCycleServiceGenerator } from '@coze-common/chat-area';
import { type PluginBizContext } from '../../types/biz-context';

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { type WriteableRenderLifeCycleServiceGenerator } from '@coze-common/chat-area';
import { type PluginBizContext } from '../../types/biz-context';

View File

@ -1 +1,17 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
export type PluginBizContext = Record<string, unknown>;

View File

@ -1 +1,17 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/// <reference types='@coze-arch/bot-typings' />

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { defineConfig } from '@coze-arch/vitest-config';
export default defineConfig({

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import type { IConfig } from '../../autoinstallers/plugins/node_modules/rush-init-project-plugin';
import SelectTeamPlugin from '../_plugins/SelectTeamPlugin';
import SetDefaultAuthorPlugin from '../_plugins/SetDefaultAuthorPlugin';

View File

@ -1 +1,17 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/// <reference types='@coze-arch/bot-typings' />

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { defineConfig } from '@coze-arch/vitest-config';
export default defineConfig({

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import type { IConfig } from '../../autoinstallers/plugins/node_modules/rush-init-project-plugin';
import SelectTeamPlugin from '../_plugins/SelectTeamPlugin';
import SetDefaultAuthorPlugin from '../_plugins/SetDefaultAuthorPlugin';

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import tailwindcss from 'tailwindcss';
import { pluginReact } from '@rsbuild/plugin-react';
import { defineConfig } from '@rsbuild/core';

View File

@ -1 +1,17 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/// <reference types="@rsbuild/core/types" />

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import type { Config } from 'tailwindcss';
export default {

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { defineConfig } from '@coze-arch/vitest-config';
export default defineConfig({

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import type { IConfig } from '../../autoinstallers/plugins/node_modules/rush-init-project-plugin';
import SelectTeamPlugin from '../_plugins/SelectTeamPlugin';
import SetDefaultAuthorPlugin from '../_plugins/SetDefaultAuthorPlugin';

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import './main.css';
export { DemoComponent } from './demo';

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
declare module '*.less' {
const resource: { [key: string]: string };
export = resource;

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import type { Config } from 'tailwindcss';
export default {

View File

@ -1,3 +1,19 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { defineConfig } from '@coze-arch/vitest-config';
export default defineConfig({

View File

@ -23,5 +23,5 @@ if [ "$PRE_LINT" != "1" ]; then
node common/scripts/install-run-rush.js fix-ts-refers --use-cached-files --shallow --submit-changes
# node infra/commanders/fix-peer-deps/bin/main.js fix --use-cached-files -s
node common/scripts/install-run-rush.js -q lint-staged || exit $?
bash .codebase/scripts/check-file-size.sh || exit $?
bash .github/scripts/check-file-size.sh || exit $?
fi

View File

@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import path from 'path';
import { defineConfig } from '@coze-arch/rsbuild-config';
@ -103,8 +103,6 @@ const mergedConfig = defineConfig({
/\/node_modules\/(marked|@dagrejs|@tanstack)\//,
],
alias: {
// TODO: fixme late开源之前需要干掉这个
'@slardar/web/client': '@slardar/web/cn',
'@coze-arch/foundation-sdk': require.resolve(
'@coze-foundation/foundation-sdk',
),

View File

@ -42,6 +42,7 @@ module.exports = [
'**/es/**',
'**/lib/**',
'**/.codebase/**',
'**/.github/**',
'**/.changeset/**',
'**/config/**',
'**/common/scripts/**',

View File

@ -0,0 +1,16 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

View File

@ -0,0 +1,16 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

View File

@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* eslint-disable @coze-arch/max-line-per-function */
import { NavLink, useParams } from 'react-router-dom';
import ReactMarkdown from 'react-markdown';
@ -47,8 +47,8 @@ import {
type ConnectResultInfo,
} from '@coze-agent-ide/space-bot';
import styles from '../index.module.less';
import { PublishResultArea } from './component/publish-result-area';
import styles from '../index.module.less';
interface PublishResultProps {
// 隐藏Banner
@ -190,7 +190,6 @@ export const PublishResult = ({
type: IntelligenceType.Bot,
spaceId: String(spaceId),
intelligenceId: String(botId),
// 开源版暂不支持该功能
enable: FLAGS['bot.studio.publish_management'] && !IS_OPEN_SOURCE,
});

View File

@ -119,7 +119,7 @@ const ToolHeader: FC<ToolHeaderProps> = ({
/>
<span className={s.title}>{I18n.t('plugin_edit_tool_title')}</span>
<OauthButtonAction />
{/* 开源版暂不支持该功能 */}
{/* 即将支持,敬请期待 */}
{FLAGS['bot.devops.plugin_mockset'] ? (
<Tooltip
style={{ display: mocksetDisabled ? 'block' : 'none' }}

View File

@ -0,0 +1,16 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

View File

@ -13,12 +13,11 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { createContext, useContext } from 'react';
export enum BotCreatorScene {
Bot = 'bot',
/** 开源版暂不支持该功能 */
DouyinBot = 'douyin-bot',
}

View File

@ -144,7 +144,7 @@ export const MoreMenuButton: FC = () => {
spaceId,
enable:
showPublishManageMenu &&
// 开源版暂不支持该功能
// 即将支持,敬请期待
FLAGS['bot.studio.publish_management'] &&
!IS_OPEN_SOURCE,
});
@ -172,7 +172,7 @@ export const MoreMenuButton: FC = () => {
<Dropdown
render={
<Dropdown.Menu mode="menu">
{/* 开源版暂不支持该功能 */}
{/* 即将支持,敬请期待 */}
{showPublishManageMenu &&
FLAGS['bot.studio.publish_management'] &&
!IS_OPEN_SOURCE
@ -196,7 +196,7 @@ export const MoreMenuButton: FC = () => {
: null}
{hideOpenIn ? null : (
<>
{/* 开源版暂不支持该功能 */}
{/* 即将支持,敬请期待 */}
{showPublishManageMenu &&
FLAGS['bot.studio.publish_management'] &&
!IS_OPEN_SOURCE ? (

View File

@ -154,7 +154,6 @@ export function ModelOption({
{model.name}
</Typography.Title>
<div className="shrink-0 flex gap-[6px]">
{/* 抖音分身场景下不展示改 tag开源版暂不支持该功能 */}
{model.model_status_details?.is_free_model &&
scene !== BotCreatorScene.DouyinBot ? (
<Tag size="mini" color="primary" className="!coz-mg-plus">

View File

@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { uniq } from 'lodash-es';
import { useRequest } from 'ahooks';
import { useMultiAgentStore } from '@coze-studio/bot-detail-store/multi-agent';
@ -60,7 +60,6 @@ export const useGetModelList = () => {
const res = await SpaceApi.GetTypeList({
cur_model_ids: expectedIdList,
model: true,
// 开源版暂不支持该功能
...(scene === BotCreatorScene.DouyinBot && {
model_scene: ModelScene.Douyin,
}),

View File

@ -70,7 +70,7 @@ const useAgentSkillPluginSettingModalController = (
},
{
refreshDeps: [commonParams],
// 开源版暂不支持该功能
// 即将支持,敬请期待
ready: visible && FLAGS['bot.devops.plugin_mockset'],
},
);

View File

@ -73,7 +73,7 @@ const usePartMainController = (pluginInfo: PluginInfoForPlayground) => {
value: PARA.toLowerCase(),
},
];
// 开源版暂不支持该功能
// 即将支持,敬请期待
if (FLAGS['bot.devops.plugin_mockset']) {
keyOptions.unshift({
label: I18n.t('bot_ide_plugin_setting_modal_mockset_tab'),

View File

@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { useShallow } from 'zustand/react/shallow';
import cls from 'classnames';
import { useBotInfoStore } from '@coze-studio/bot-detail-store/bot-info';
@ -99,7 +99,7 @@ const AgentIdePrompt = (props: AgentIdePromptProps) => {
librarys={libraryList}
onAddLibrary={addLibrary}
spaceId={space_id}
// Agent IDE 在抖音分身场景下需要传入分身id进行判断当前资源是否存在 开源版暂不支持该功能
// Agent IDE 在抖音分身场景下需要传入分身id进行判断当前资源是否存在
avatarBotId={
businessType === BusinessType.DouyinAvatar ? botId : undefined
}

View File

@ -0,0 +1,16 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

View File

@ -39,7 +39,7 @@ export function ChangeButton({
}: ChangeButtonProps) {
const [FLAGS] = useFlags();
// 开源版暂不支持该功能
// 即将支持,敬请期待
const showText = modeInfo?.showText || FLAGS['bot.studio.prompt_diff'];
const ToolTipFragment = tooltip ? Tooltip : React.Fragment;

View File

@ -0,0 +1,16 @@
/*
* Copyright 2025 coze-dev Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

Some files were not shown because too many files have changed in this diff Show More