ring/installer/pyproject.toml
Fred Amaral 04b5e68324
feat(factory): enhance adapter for full Factory AI compatibility
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.
2025-12-16 01:16:53 -03:00

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"