跳到正文
cccskills
免费在 GitHub 公开中文介绍

Proposals

按照 Carbon 项目的模板和规范编写、提交及管理语言演进提案,结合项目目标说明方案取舍,并根据主议题整理已确定的讨论,同时保持提案摘要与拉取请求说明一致。

原文查看原文说明

Instructions for writing, submitting, and managing Carbon evolution proposals.

carbon-language/carbon-lang星标 33,929(GitHub 33,929 + cccskills 0)

实测评分 未实测

查看安装方法

适用场景

  • 编写 Carbon 语言演进提案
  • 将主议题的决策整理成文档
  • 比较设计方案及其取舍
  • 核对提案摘要与拉取请求说明

中文介绍

功能

指导 Carbon 语言演进提案的编写、提交和管理。创建新提案时,会确认指定标题,并通过辅助脚本生成模板。之后按照现有提案的写法以及项目目标和原则组织内容。提案会说明各个备选方案的优点、缺点和未被采纳的原因,并确保提案摘要与拉取请求说明一致。如果要把已有讨论整理成正式提案,会参考主议题、评论和相关资料记录决策内容,使提案本身也能独立阅读。

适用场景

适合提出 Carbon 语言规范或设计变更,或将讨论中已经确定的决策整理成文档。需要比较不同选择,并说明决策与项目目标之间的联系时也可以使用。

使用示例

  • “请使用现有模板编写一份新的 Carbon 演进提案。”
  • “请把这个主议题中的决策整理成一份可独立阅读的提案。”
  • “请检查提案摘要是否与拉取请求说明一致。”

注意事项

只有在收到明确要求时才创建提案。将拉取请求设为可供评审之前,应先让用户有机会审阅提案。

本介绍由 AI(OpenAI Codex)根据公开的 SKILL.md 撰写。准确的规格请查看下方原文。

文档检查

AI 根据 SKILL.md 的内容检查了需要注意的操作和使用前提。评分只依据实际运行的结果(实测对比)。

安全性发送数据、删除文件、执行命令等是否有说明
A良好仅在明确要求时创建,并要求用户先审阅再开放评审。
安装难易度所需工具和 API 密钥是否少且有说明
B部分不足使用辅助脚本和 `gh`,但未提供环境安装步骤。

不计入评分。 由 AI(OpenAI Codex)于 2026年10月26日 评估。仅供参考,安装前请同时查看原文。

如果您认为评估有误,请申请复核

请写明哪一项有误以及原因。无需登录。我们会对照 SKILL.md 重新评估,并在此处更新结果。

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

包含的文件(1)

  • SKILL.md6.5 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Proposals

<!-- Part of the Carbon Language project, under the Apache License v2.0 with LLVM Exceptions. See /LICENSE for license information. SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -->

Overview

This skill provides instructions and best practices for working with proposals. Only create a proposal when explicitly directed as part of the task.

Make sure to confirm the desired title for the proposal as that will govern the filename.

Create a new proposal

  1. Use the helper script: Run ./proposals/scripts/new_proposal.py "Title" to create a templated file and instructions for setting up the PR.
  2. Proposal file: The file will be named proposals/p######-title.md, where ###### is the 6-digit GitHub pull request number and title is a slugified version of the proposal title.
  3. Template: Follow the structure in proposals/scripts/template.md, noting the specific TODO instructions in each section for the content that should be included there.
  4. PR description: Update the pull request description to match the abstract section in the proposal document.

[!IMPORTANT] Do not mark the PR ready for review. The user must have the opportunity to review the proposal produced before asking for any review.

Writing style and best practices

  • Skimmable: Use BLUF (Bottom Line Up Front) or Inverted Pyramid style. Keep it brief, focused, and technical.
  • Match existing proposal style: Review existing proposals (preferring more recent ones with higher numbers) to understand the expected style, wording, and nature of content to include.
  • Connect to goals: In the Rationale section, link to specific goals in /docs/project/goals.md and principles in /docs/project/principles (e.g., error_handling.md, one_way.md).
  • Living design: If the proposal updates design documentation, include those changes in the PR if possible. If deferred, add "TODO" comments pointing to the proposal (e.g., > **TODO:** Document ... adopted in [p######](/proposals/p######-title.md)). For pervasive changes, file a GitHub issue instead of adding many TODOs.

Alternatives considered and leads decisions

There are always alternatives to a proposal, and the proposal should carefully include sections describing all of them and the rationale for not selecting them. Any living design document updates should focus on fully describing the end-state design, and the key motivating aspects of that design. The main proposal should focus on what is changing and why it is changing, and should leave detailed description of the resulting design to the living design document, and why not rationale to the description of each alternative.

  • Cover all the alternatives: Make sure to describe any alternatives considered, even if minor or rejected early.
  • Be specific: Don't be vague about any of the alternatives, or the rationale for not choosing them.
  • Connect to goals or principles: In addition to the rationale section, one of the best rationale structures for rejecting an alternative connects that choice back to the goals or principles relevant.
  • Always frame as a tradeoff: Selecting the proposed direction instead of an alternative is always a tradeoff, with both advantages and disadvantages.
  • Where relevant, cite the leads issue that decides against an alternative, in addition to summarizing the key points, tradeoffs, and rationale for the decision.

[!IMPORTANT] Don't just list the alternatives, create a sub-section for each alternative and carefully describe the alternative, the advantages, disadvantages and what the core of the decision is to reject each alternative.

[!IMPORTANT] Carefully research each alternative in the leads issue in order to provide this clear and comprehensive explanation.

Building from a leads issue

Sometimes a proposal is specifically documenting and formalizing a decided leads issue. When this is the case, carefully research that leads issue, reading the original issue text and every comment on the issue. Also read any linked Google documents, linked issues, examples, gists, or other supplemental information cited.

  • Summarize the leads issue: Ensure you provide a high level summary of the decided direction of the leads issue as the proposal.
  • Capture and document every key aspect of the decision made and factor that led to the decision. It is important that the proposal stands alone, and the leads issue is merely cited for context and history.
  • Stay grounded: Only include alternatives, rationale, and arguments based on what you find in the issue and related documents. No new information should be in the proposal.

Use the gh command line tool to query leads issues in order to carefully examine all of the comments. Follow any mentioned links to gather more data. Refer to the GitHub CLI usage skill for detailed instructions on using the gh tool.

Ask the user to clarify any aspects of the leads issue that are unclear rather than continuing to edit the proposal. If there are questions that you don't find an answer to in the issue, ask this to the user and let them provide an answer that you use as the basis of what to include.

Examples are golden

Heavily leverage examples to illustrate both the specifics of the design being proposed, and the nature of the change being proposed. More examples to illustrate more aspects, corner cases, or provide a more complete understanding are almost always good. Comments in example code should focus on what that part of the example illustrates from the proposal.

Keep the PR description in sync with the abstract

Whenever you edit the abstract or notice differences from the PR description, you should update the PR description to match the abstract. The only exception is to retain any "Assisted-by" or other tags at the end of the description that are only needed there and not in the abstract.

If you are creating or updating a proposal, make sure the PR description in question contains an Assisted-by: tag that is appropriate for describing which AI tool is being used.

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

本技能介绍如何使用命令行`gh`只读查看GitHub issue正文和评论,支持通过编号或URL定位,也可指定其他仓库,并说明如何提取大量评论。

  • 查看issue正文和评论
  • 通过URL读取issue
  • 查看其他仓库的issue
carbon-language/carbon-lang3.4万2026年10月26日 更新

Agent tools

免费有简介

本技能为在 Carbon 代码库中工作的 AI 助手规定文件查看、搜索和编辑工具,并说明临时文件的存放与清理规则,以及何时可以编写和运行自定义程序。

  • 按规定工具搜索Carbon文件
  • 为文件编辑选择专用工具
  • 确认临时文件的存放与清理规则
carbon-language/carbon-lang3.4万2026年10月26日 更新

Bazel usage

免费有简介

了解如何在 Carbon 项目中通过 Bazelisk 构建、测试和运行程序,包括指定目标、启用 ASan,以及系统依赖变更后重建缓存。

  • 构建 Carbon 代码
  • 运行与修改相关的测试
  • 启动 Bazel 构建的程序
carbon-language/carbon-lang3.4万2026年10月26日 更新

Builtin functions

免费有简介

本技能介绍如何为Carbon编译器添加内置函数,包括类型注册、签名验证、常量求值、运行时LLVM IR生成、Prelude绑定,以及使用最小Prelude编写针对性测试。

  • 注册内置函数
  • 实现常量求值
  • 添加LLVM IR生成
carbon-language/carbon-lang3.4万2026年10月26日 更新

Code style

免费有简介

了解 Carbon 工具链对 Bazel、C++、Carbon、Markdown 和 Python 文件的格式规范,并查看注释、文档、命名、设计及提交说明的写作要求。

  • 整理 Carbon 代码格式
  • 检查注释和文档
  • 确认名称是否符合实际含义
carbon-language/carbon-lang3.4万2026年10月26日 更新

Diagnostics

免费有简介

本技能介绍如何在Carbon工具链中添加或修改错误和警告,包括注册诊断类型、用带类型的参数构造消息、为源码位置添加标签和上下文,以及检查措辞规范和测试覆盖。

  • 添加诊断消息
  • 为源码位置添加标签
  • 统一诊断措辞
carbon-language/carbon-lang3.4万2026年10月26日 更新

查看 carbon-language 的全部技能

报告此技能的问题