mirror of
https://github.com/LerianStudio/ring
synced 2026-04-21 13:37:27 +00:00
The previous Factory AI adapter had several limitations that caused installation failures and generated incorrect components. This change implements key transformations to ensure full compatibility with the Factory platform's specific requirements. Key improvements include: - Qualify droid names with a plugin namespace (e.g., `ring-plugin:name`) to prevent name collisions in Factory's flat directory structure. - Normalize tool names to match Factory's strict schema (e.g., `WebFetch` -> `FetchUrl`) and remove unsupported tools like `Task`. - Adapt installation logic to create the required skill path structure: `skills/<name>/<name>.md`. - Rewrite agent->droid text replacement to be context-aware, protecting code blocks, URLs, and inline code from corruption. Additionally, this commit cleans up import ordering across the module and removes an obsolete security documentation file, as the described fixes are now implemented.
85 lines
2 KiB
TOML
85 lines
2 KiB
TOML
[build-system]
|
|
requires = ["setuptools>=61.0", "wheel"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[project]
|
|
name = "ring-installer"
|
|
version = "0.1.0"
|
|
description = "Multi-platform installer for Ring AI skills library"
|
|
readme = "README.md"
|
|
license = {text = "MIT"}
|
|
authors = [
|
|
{name = "Lerian Studio", email = "contact@lerian.studio"}
|
|
]
|
|
maintainers = [
|
|
{name = "Fred Amaral", email = "fred@fredamaral.com.br"}
|
|
]
|
|
keywords = [
|
|
"ai",
|
|
"skills",
|
|
"installer",
|
|
"claude",
|
|
"cursor",
|
|
"cline",
|
|
"factory"
|
|
]
|
|
classifiers = [
|
|
"Development Status :: 4 - Beta",
|
|
"Environment :: Console",
|
|
"Intended Audience :: Developers",
|
|
"License :: OSI Approved :: MIT License",
|
|
"Operating System :: OS Independent",
|
|
"Programming Language :: Python :: 3",
|
|
"Programming Language :: Python :: 3.8",
|
|
"Programming Language :: Python :: 3.9",
|
|
"Programming Language :: Python :: 3.10",
|
|
"Programming Language :: Python :: 3.11",
|
|
"Programming Language :: Python :: 3.12",
|
|
"Topic :: Software Development :: Build Tools",
|
|
"Topic :: Utilities",
|
|
]
|
|
requires-python = ">=3.8"
|
|
dependencies = [
|
|
"PyYAML>=6.0.0,<7.0.0",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
dev = [
|
|
"pytest>=7.0.0",
|
|
"pytest-cov>=4.0.0",
|
|
"mypy>=1.0.0",
|
|
"ruff>=0.1.0",
|
|
]
|
|
|
|
[project.urls]
|
|
Homepage = "https://github.com/lerianstudio/ring"
|
|
Documentation = "https://github.com/lerianstudio/ring#readme"
|
|
Repository = "https://github.com/lerianstudio/ring"
|
|
Issues = "https://github.com/lerianstudio/ring/issues"
|
|
|
|
[project.scripts]
|
|
ring-installer = "ring_installer.__main__:main"
|
|
|
|
[tool.setuptools.packages.find]
|
|
where = ["."]
|
|
include = ["ring_installer*"]
|
|
|
|
[tool.mypy]
|
|
python_version = "3.8"
|
|
warn_return_any = true
|
|
warn_unused_configs = true
|
|
disallow_untyped_defs = true
|
|
|
|
[tool.ruff]
|
|
target-version = "py38"
|
|
line-length = 100
|
|
|
|
[tool.ruff.lint]
|
|
select = ["E", "F", "W", "I", "N", "UP", "B", "C4"]
|
|
ignore = ["E501"]
|
|
|
|
[tool.pytest.ini_options]
|
|
testpaths = ["tests"]
|
|
python_files = ["test_*.py"]
|
|
python_functions = ["test_*"]
|
|
addopts = "-v --tb=short"
|