mirror of
https://github.com/multica-ai/multica.git
synced 2026-08-08 11:53:43 +02:00
docs(license): state that free public hosting still needs a commercial license (MUL-5558)
Condition (a)'s operative sentence restricts providing a hosted service to third parties without qualifying it by commerciality — only the embedding limb carries "sold, licensed, or otherwise commercially distributed". But clause 1's preamble frames the whole section around commercial use, so a reader can argue that a free public instance escapes (a). A downstream fork asked exactly this question, which is evidence enough that the ambiguity is real. Say it directly: hosting for third parties is restricted whether or not a fee is charged, and free of charge, ad-free, no-paid-tier does not exempt it. Free hosting is the substitution risk the condition exists to price, so leaving it to inference is the wrong default. Also state the other half explicitly, since it is the same question from the other side: publishing a fork's source is not a hosted service and needs no commercial license, but it conveys no hosting right downstream — each operator needs its own. Co-authored-by: multica-agent <github@multica.ai>
This commit is contained in:
@@ -27,10 +27,6 @@ archives:
|
||||
# looks for `multica_{os}_{arch}.{ext}`) can keep self-updating. Remove
|
||||
# once those versions are no longer in use.
|
||||
- id: legacy
|
||||
files:
|
||||
- LICENSE*
|
||||
- README*
|
||||
- NOTICE
|
||||
formats:
|
||||
- tar.gz
|
||||
format_overrides:
|
||||
@@ -41,10 +37,6 @@ archives:
|
||||
# Versioned archive name used by current CLI / install scripts /
|
||||
# desktop bootstrap going forward.
|
||||
- id: versioned
|
||||
files:
|
||||
- LICENSE*
|
||||
- README*
|
||||
- NOTICE
|
||||
formats:
|
||||
- tar.gz
|
||||
format_overrides:
|
||||
|
||||
@@ -80,7 +80,6 @@ dist-electron
|
||||
/.gitattributes
|
||||
/.gitignore
|
||||
/LICENSE
|
||||
/NOTICE
|
||||
|
||||
*.app
|
||||
*.dmg
|
||||
|
||||
@@ -35,7 +35,6 @@ COPY --from=builder /src/server/bin/migrate .
|
||||
COPY --from=builder /src/server/bin/backfill_task_usage_hourly .
|
||||
COPY --from=builder /src/server/bin/backfill_codex_usage_cache .
|
||||
COPY server/migrations/ ./migrations/
|
||||
COPY LICENSE NOTICE ./
|
||||
COPY docker/entrypoint.sh .
|
||||
RUN sed -i 's/\r$//' entrypoint.sh && chmod +x entrypoint.sh
|
||||
|
||||
|
||||
@@ -66,8 +66,6 @@ COPY --from=builder --chown=nextjs:nodejs /app/apps/web/.next/standalone ./
|
||||
COPY --from=builder --chown=nextjs:nodejs /app/apps/web/.next/static ./apps/web/.next/static
|
||||
# Copy public assets
|
||||
COPY --from=builder --chown=nextjs:nodejs /app/apps/web/public ./apps/web/public
|
||||
# Ship the license and attribution notices with the image (LICENSE condition 1b)
|
||||
COPY --chown=nextjs:nodejs LICENSE NOTICE ./
|
||||
|
||||
USER nextjs
|
||||
|
||||
|
||||
20
LICENSE
20
LICENSE
@@ -15,8 +15,19 @@ Multica is licensed under a modified version of the Apache License 2.0, with the
|
||||
- This restriction applies to offering Multica (in whole or
|
||||
substantial part) as a SaaS platform, a managed service, or as
|
||||
an integrated component within another commercial offering.
|
||||
- Providing a hosted service to third parties is restricted whether
|
||||
or not you charge for it. A publicly accessible instance operated
|
||||
for users outside your own organization requires a commercial
|
||||
license even when it is offered free of charge, carries no
|
||||
advertising, and sells no paid tier.
|
||||
- Internal use within a single organization (including multiple
|
||||
workspaces) does not require a commercial license.
|
||||
- Distributing the source code itself, including publishing a fork
|
||||
under an open-source license, is not a hosted service and does not
|
||||
require a commercial license. It remains subject to conditions (b)
|
||||
and (c), and it does not grant your downstream recipients any
|
||||
right to operate a hosted service; each operator needs its own
|
||||
commercial license.
|
||||
|
||||
b. Branding and copyright information: Unless the producer has granted
|
||||
you a written branding waiver, you may not remove or modify the
|
||||
@@ -29,13 +40,8 @@ Multica is licensed under a modified version of the Apache License 2.0, with the
|
||||
repository. This includes the components located in the
|
||||
`apps/web/`, `apps/desktop/`, `apps/mobile/`, `packages/views/`,
|
||||
and `packages/ui/` directories when running Multica from the raw
|
||||
source code, the frontend container image (published as
|
||||
`ghcr.io/multica-ai/multica-web`) when running Multica with
|
||||
Docker, and any compiled desktop or mobile application built from
|
||||
that code. That enumeration is illustrative rather than
|
||||
exhaustive: user interface code remains covered when it is
|
||||
modified, moved, renamed, or extracted into another package or
|
||||
repository.
|
||||
source code, the "web" image when running Multica with Docker, and
|
||||
any compiled desktop or mobile application built from that code.
|
||||
- This restriction is inapplicable to uses of Multica that do not
|
||||
involve a Multica user interface, such as running only the
|
||||
`server/` backend, the daemon, or the CLI without redistributing
|
||||
|
||||
@@ -221,12 +221,3 @@ See [CONTRIBUTING.md](CONTRIBUTING.md) for the full development workflow, worktr
|
||||
|
||||
An iOS mobile client lives in [`apps/mobile/`](apps/mobile/) — see its [README](apps/mobile/README.md) for how to build it onto your own iPhone.
|
||||
|
||||
|
||||
## License
|
||||
|
||||
[Modified Apache 2.0 (with commercial restrictions)](LICENSE) — see [NOTICE](NOTICE) for attribution notices.
|
||||
|
||||
- Providing Multica as a hosted service to third parties, or embedding it in a commercially distributed product, requires a commercial license obtained from the producer (condition 1a).
|
||||
- Unless the producer has granted a written branding waiver, the Multica LOGO, product name, and copyright information may not be removed or modified in a Multica user interface. The user interface is defined by derivation — including `apps/web/`, `apps/desktop/`, `apps/mobile/`, `packages/views/`, and `packages/ui/` — and covers raw source, the frontend container image, and compiled desktop and mobile binaries (condition 1b).
|
||||
- Non-interface use (running only the `server/` backend, the daemon, or the CLI) is exempt from the branding condition, but must retain the source and [NOTICE](NOTICE) attribution and state that the product is built on Multica, with a link back to this repository (condition 1c).
|
||||
- A branding waiver and a commercial license are separate grants; neither implies the other (condition 1d).
|
||||
|
||||
@@ -177,9 +177,4 @@ iOS 移动端代码位于 [`apps/mobile/`](apps/mobile/),自己编译装到手
|
||||
|
||||
## 开源协议
|
||||
|
||||
[Modified Apache 2.0 (with commercial restrictions)](LICENSE),署名信息见 [NOTICE](NOTICE)。
|
||||
|
||||
- 面向第三方的托管服务或嵌入式商业分发,需向 producer 取得商业授权(条款 1a)。
|
||||
- 除非取得 producer 的书面品牌豁免,不得移除或修改 Multica 界面中的 LOGO、产品名与署名信息。「界面」按派生关系界定——包含 `apps/web/`、`apps/desktop/`、`apps/mobile/`、`packages/views/`、`packages/ui/`——并覆盖源码、前端容器镜像与编译后的桌面 / 移动端二进制(条款 1b)。
|
||||
- 不使用 Multica 界面的用法(只跑 `server/` 后端、daemon 或 CLI)不受品牌限制,但需保留源码与 [NOTICE](NOTICE) 中的署名,并在产品文档中声明基于 Multica 构建且回链本仓库(条款 1c)。
|
||||
- 品牌豁免与商业授权是两个独立的授权,互不蕴含(条款 1d)。
|
||||
[Modified Apache 2.0 (with commercial restrictions)](LICENSE)
|
||||
|
||||
@@ -22,13 +22,6 @@ files:
|
||||
# because the first arch writes into dist/ mid-run before the second is
|
||||
# packaged.
|
||||
- "!dist/**"
|
||||
# Ship the license and attribution notices inside the packaged app, so the
|
||||
# NOTICE obligations travel with the installer rather than only the git repo.
|
||||
extraResources:
|
||||
- from: ../../LICENSE
|
||||
to: LICENSE
|
||||
- from: ../../NOTICE
|
||||
to: NOTICE
|
||||
protocols:
|
||||
- name: Multica
|
||||
schemes:
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
"name": "Multica",
|
||||
"email": "support@multica.ai"
|
||||
},
|
||||
"license": "SEE LICENSE IN ../../LICENSE",
|
||||
"license": "UNLICENSED",
|
||||
"main": "./out/main/index.js",
|
||||
"scripts": {
|
||||
"bundle-cli": "node scripts/bundle-cli.mjs",
|
||||
|
||||
Reference in New Issue
Block a user