diff --git a/pkg/permission/permission.go b/permission/permission.go
similarity index 100%
rename from pkg/permission/permission.go
rename to permission/permission.go
diff --git a/pkg/permission/permission_test.go b/permission/permission_test.go
similarity index 100%
rename from pkg/permission/permission_test.go
rename to permission/permission_test.go
diff --git a/pkg/permission/ruleset.go b/permission/ruleset.go
similarity index 100%
rename from pkg/permission/ruleset.go
rename to permission/ruleset.go
diff --git a/pkg/permission/ruleset_test.go b/permission/ruleset_test.go
similarity index 100%
rename from pkg/permission/ruleset_test.go
rename to permission/ruleset_test.go
diff --git a/pkg/auth/anonymous.go b/pkg/auth/anonymous.go
index 9fffc86351e794758a00f70218d820a3855eb95a..0a877cbb9b06502560d2e45698c456b330edf8eb 100644
--- a/pkg/auth/anonymous.go
+++ b/pkg/auth/anonymous.go
@@ -4,10 +4,10 @@ import (
 	"context"
 	"fmt"
 
+	"git.perx.ru/perxis/perxis-go/permission"
 	"git.perx.ru/perxis/perxis-go/pkg/environments"
 	"git.perx.ru/perxis/perxis-go/pkg/errors"
 	"git.perx.ru/perxis/perxis-go/pkg/members"
-	"git.perx.ru/perxis/perxis-go/pkg/permission"
 	"git.perx.ru/perxis/perxis-go/pkg/roles"
 	"git.perx.ru/perxis/perxis-go/pkg/service"
 	"git.perx.ru/perxis/perxis-go/pkg/spaces"
diff --git a/pkg/auth/client.go b/pkg/auth/client.go
index 9db7a5683681137c346f6cba91ec3d40c6a331d6..73b384b8fb2194115c240502704dfd88a64f58ac 100644
--- a/pkg/auth/client.go
+++ b/pkg/auth/client.go
@@ -4,12 +4,12 @@ import (
 	"context"
 	"fmt"
 
+	"git.perx.ru/perxis/perxis-go/permission"
 	"git.perx.ru/perxis/perxis-go/pkg/clients"
 	"git.perx.ru/perxis/perxis-go/pkg/collaborators"
 	"git.perx.ru/perxis/perxis-go/pkg/environments"
 	"git.perx.ru/perxis/perxis-go/pkg/errors"
 	"git.perx.ru/perxis/perxis-go/pkg/members"
-	"git.perx.ru/perxis/perxis-go/pkg/permission"
 	"git.perx.ru/perxis/perxis-go/pkg/roles"
 	"git.perx.ru/perxis/perxis-go/pkg/service"
 	"git.perx.ru/perxis/perxis-go/pkg/spaces"
diff --git a/pkg/auth/principal.go b/pkg/auth/principal.go
index 004db35f2eab6433b1889861e964666ab4a71a21..31e9f8c51d54b0473edfd4eb73a4fed2246b0802 100644
--- a/pkg/auth/principal.go
+++ b/pkg/auth/principal.go
@@ -3,9 +3,9 @@ package auth
 import (
 	"context"
 
+	"git.perx.ru/perxis/perxis-go/permission"
 	"git.perx.ru/perxis/perxis-go/pkg/environments"
 	"git.perx.ru/perxis/perxis-go/pkg/members"
-	"git.perx.ru/perxis/perxis-go/pkg/permission"
 	"git.perx.ru/perxis/perxis-go/pkg/roles"
 )
 
diff --git a/pkg/auth/system.go b/pkg/auth/system.go
index dd4d03984da3bcc2623f9b9d4e9a2b11695946a4..ba883c00a286627790c9dd2d3abd30a2a88dcdb8 100644
--- a/pkg/auth/system.go
+++ b/pkg/auth/system.go
@@ -4,8 +4,8 @@ import (
 	"context"
 	"fmt"
 
+	"git.perx.ru/perxis/perxis-go/permission"
 	"git.perx.ru/perxis/perxis-go/pkg/members"
-	"git.perx.ru/perxis/perxis-go/pkg/permission"
 	"git.perx.ru/perxis/perxis-go/pkg/roles"
 )
 
diff --git a/pkg/auth/user.go b/pkg/auth/user.go
index 29e879457bebc4da201ce126c6c140e02989f2c0..f97652670ab129f02d14271c1c19584ba7480b54 100644
--- a/pkg/auth/user.go
+++ b/pkg/auth/user.go
@@ -4,11 +4,11 @@ import (
 	"context"
 	"fmt"
 
+	"git.perx.ru/perxis/perxis-go/permission"
 	"git.perx.ru/perxis/perxis-go/pkg/collaborators"
 	"git.perx.ru/perxis/perxis-go/pkg/environments"
 	"git.perx.ru/perxis/perxis-go/pkg/errors"
 	"git.perx.ru/perxis/perxis-go/pkg/members"
-	"git.perx.ru/perxis/perxis-go/pkg/permission"
 	"git.perx.ru/perxis/perxis-go/pkg/roles"
 	"git.perx.ru/perxis/perxis-go/pkg/service"
 	"git.perx.ru/perxis/perxis-go/pkg/spaces"
diff --git a/pkg/clients/transport/grpc/protobuf_type_converters.microgen.go b/pkg/clients/transport/grpc/protobuf_type_converters.microgen.go
index 115dc059cd4cf1dd0b1712e91abe185af871a9ad..ed8da3b63a1cb6bd99857655893bcc8b08cfbb89 100644
--- a/pkg/clients/transport/grpc/protobuf_type_converters.microgen.go
+++ b/pkg/clients/transport/grpc/protobuf_type_converters.microgen.go
@@ -5,8 +5,8 @@
 package transportgrpc
 
 import (
+	permission2 "git.perx.ru/perxis/perxis-go/permission"
 	service "git.perx.ru/perxis/perxis-go/pkg/clients"
-	permission "git.perx.ru/perxis/perxis-go/pkg/permission"
 	pb "git.perx.ru/perxis/perxis-go/proto/clients"
 	commonpb "git.perx.ru/perxis/perxis-go/proto/common"
 )
@@ -123,7 +123,7 @@ func ProtoToListPtrClient(protoClients []*pb.Client) ([]*service.Client, error)
 	return clients, nil
 }
 
-func PtrPermissionRuleToProto(rule *permission.Rule) (*commonpb.Rule, error) {
+func PtrPermissionRuleToProto(rule *permission2.Rule) (*commonpb.Rule, error) {
 	if rule == nil {
 		return nil, nil
 	}
@@ -146,18 +146,18 @@ func PtrPermissionRuleToProto(rule *permission.Rule) (*commonpb.Rule, error) {
 	}, nil
 }
 
-func ProtoToPtrPermissionRule(protoRule *commonpb.Rule) (*permission.Rule, error) {
+func ProtoToPtrPermissionRule(protoRule *commonpb.Rule) (*permission2.Rule, error) {
 	if protoRule == nil {
 		return nil, nil
 	}
-	actions := make([]permission.Action, 0, len(protoRule.Actions))
+	actions := make([]permission2.Action, 0, len(protoRule.Actions))
 	for _, a := range protoRule.Actions {
-		actions = append(actions, permission.Action(a))
+		actions = append(actions, permission2.Action(a))
 	}
-	r := &permission.Rule{
+	r := &permission2.Rule{
 		CollectionID:    protoRule.CollectionId,
 		Actions:         actions,
-		Access:          permission.Access(protoRule.Access),
+		Access:          permission2.Access(protoRule.Access),
 		HiddenFields:    protoRule.HiddenFields,
 		DenyReadFields:  protoRule.DenyReadFields,
 		DenyWriteFields: protoRule.DenyWriteFields,
diff --git a/pkg/collections/collection.go b/pkg/collections/collection.go
index 6c87ec232003b71a3873888a9f00e8513959fed4..e924865320bacaa4af72a01344a5633f6098ab1c 100644
--- a/pkg/collections/collection.go
+++ b/pkg/collections/collection.go
@@ -3,8 +3,8 @@ package collections
 import (
 	"time"
 
+	"git.perx.ru/perxis/perxis-go/permission"
 	"git.perx.ru/perxis/perxis-go/pkg/data"
-	"git.perx.ru/perxis/perxis-go/pkg/permission"
 	"git.perx.ru/perxis/perxis-go/pkg/schema"
 )
 
diff --git a/pkg/collections/transport/grpc/protobuf_type_converters.microgen.go b/pkg/collections/transport/grpc/protobuf_type_converters.microgen.go
index 282f308cdb556ec92a9dcec0e4d39a1b75fd444d..e7ba850e062714d792001615807d8a091f511637 100644
--- a/pkg/collections/transport/grpc/protobuf_type_converters.microgen.go
+++ b/pkg/collections/transport/grpc/protobuf_type_converters.microgen.go
@@ -7,8 +7,8 @@ package transportgrpc
 import (
 	"fmt"
 
+	"git.perx.ru/perxis/perxis-go/permission"
 	service "git.perx.ru/perxis/perxis-go/pkg/collections"
-	"git.perx.ru/perxis/perxis-go/pkg/permission"
 	schema "git.perx.ru/perxis/perxis-go/pkg/schema"
 	pb "git.perx.ru/perxis/perxis-go/proto/collections"
 	commonpb "git.perx.ru/perxis/perxis-go/proto/common"
diff --git a/pkg/roles/role.go b/pkg/roles/role.go
index 81feb1e909f15d40a918309a25add9c420e25b35..836099c3cbc0a45ca0b61989969bc7b1ec97e656 100644
--- a/pkg/roles/role.go
+++ b/pkg/roles/role.go
@@ -4,9 +4,9 @@ import (
 	"context"
 	"slices"
 
+	"git.perx.ru/perxis/perxis-go/permission"
 	"git.perx.ru/perxis/perxis-go/pkg/data"
 	"git.perx.ru/perxis/perxis-go/pkg/environments"
-	"git.perx.ru/perxis/perxis-go/pkg/permission"
 )
 
 const (
diff --git a/pkg/roles/transport/grpc/protobuf_type_converters.microgen.go b/pkg/roles/transport/grpc/protobuf_type_converters.microgen.go
index 4dca1e282e3bfd93fa287cc8df3495fb0931444e..babb3c261bd9b4d47b1352092df872a84bba8d7e 100644
--- a/pkg/roles/transport/grpc/protobuf_type_converters.microgen.go
+++ b/pkg/roles/transport/grpc/protobuf_type_converters.microgen.go
@@ -5,7 +5,7 @@
 package transportgrpc
 
 import (
-	permission "git.perx.ru/perxis/perxis-go/pkg/permission"
+	permission2 "git.perx.ru/perxis/perxis-go/permission"
 	service "git.perx.ru/perxis/perxis-go/pkg/roles"
 	commonpb "git.perx.ru/perxis/perxis-go/proto/common"
 	pb "git.perx.ru/perxis/perxis-go/proto/roles"
@@ -35,7 +35,7 @@ func ProtoToPtrRole(protoRole *pb.Role) (*service.Role, error) {
 		return nil, nil
 	}
 
-	rules := make([]*permission.Rule, 0, len(protoRole.Rules))
+	rules := make([]*permission2.Rule, 0, len(protoRole.Rules))
 	for _, pr := range protoRole.Rules {
 		r, _ := ProtoToPtrPermissionRule(pr)
 		rules = append(rules, r)
@@ -69,7 +69,7 @@ func ProtoToListPtrRole(protoRoles []*pb.Role) ([]*service.Role, error) {
 	return roles, nil
 }
 
-func PtrPermissionRuleToProto(rule *permission.Rule) (*commonpb.Rule, error) {
+func PtrPermissionRuleToProto(rule *permission2.Rule) (*commonpb.Rule, error) {
 	if rule == nil {
 		return nil, nil
 	}
@@ -91,18 +91,18 @@ func PtrPermissionRuleToProto(rule *permission.Rule) (*commonpb.Rule, error) {
 	}, nil
 }
 
-func ProtoToPtrPermissionRule(protoRule *commonpb.Rule) (*permission.Rule, error) {
+func ProtoToPtrPermissionRule(protoRule *commonpb.Rule) (*permission2.Rule, error) {
 	if protoRule == nil {
 		return nil, nil
 	}
-	actions := make([]permission.Action, 0, len(protoRule.Actions))
+	actions := make([]permission2.Action, 0, len(protoRule.Actions))
 	for _, a := range protoRule.Actions {
-		actions = append(actions, permission.Action(a))
+		actions = append(actions, permission2.Action(a))
 	}
-	r := &permission.Rule{
+	r := &permission2.Rule{
 		CollectionID:    protoRule.CollectionId,
 		Actions:         actions,
-		Access:          permission.Access(protoRule.Access),
+		Access:          permission2.Access(protoRule.Access),
 		HiddenFields:    protoRule.HiddenFields,
 		DenyReadFields:  protoRule.DenyReadFields,
 		DenyWriteFields: protoRule.DenyWriteFields,
diff --git a/pkg/setup/role.go b/pkg/setup/role.go
index 2498e8456c474331ce648dbf48caaccf16718bb3..ac8c6822bbad65457535440939de056311febeeb 100644
--- a/pkg/setup/role.go
+++ b/pkg/setup/role.go
@@ -4,11 +4,11 @@ import (
 	"context"
 	"strings"
 
+	"git.perx.ru/perxis/perxis-go/permission"
 	"go.uber.org/zap"
 
 	"git.perx.ru/perxis/perxis-go/pkg/data"
 	"git.perx.ru/perxis/perxis-go/pkg/errors"
-	"git.perx.ru/perxis/perxis-go/pkg/permission"
 	"git.perx.ru/perxis/perxis-go/pkg/roles"
 )